anchor.diff:          // |<-----line width------>               |
           // space = layoutw-rm-linew
           SpaceOnLine :=   FLayoutWidth
  -                       - Style.RightMargin * FontWidthPrecisionFactor
  +                       - Style.RightMargin
                          - Line.Width; // Note: line width includes left margin
  -        Result :=   Style.LeftMargin * FontWidthPrecisionFactor
  -                  + SpaceOnLine div 2;
  +        Result :=   Style.LeftMargin + (SpaceOnLine div 2);
         end;
     end;
   end;
  
positive.code: 
          if GetCharIndex( P ) - GetCharIndex( Line.Text ) >= Offset then
          begin
            X := X div FontWidthPrecisionFactor;
            // found
            exit;
          end;
  
negative.code:             PerformStyleTag( Element.Tag,
                               Style,
                               X );
              NewMarginX := Style.LeftMargin;
              if NewMarginX > X then
              begin
                //skip across...
  