anchor.diff:  
           if GetCharIndex( P ) - GetCharIndex( Line.Text ) >= Offset then
           begin
  -          X := X div FontWidthPrecisionFactor;
  +          X := X;
             // found
             exit;
           end;
  
positive.code: begin
    case Style.Alignment of
      taLeft:
        Result := Style.LeftMargin * FontWidthPrecisionFactor;
  
      taRight:
        Result :=   Style.LeftMargin * FontWidthPrecisionFactor
                  + FLayoutWidth
                  - Style.RightMargin * FontWidthPrecisionFactor
                  - Line.Width;
  
      taCenter:
  
negative.code:         // Now find out how wide the thing is
          inc( X, GetElementWidth( Element ) );
  
          if X > XToFind then
          begin
            // found
            Offset := PCharDiff( P, Line.Text );
  