anchor.diff:    PrevX := 0;
     LastWrappable := -1;
     LastWrappableIsSpace := False;
  -  CharSpacing := fFontData[aFont].CharSpacing; //Spacing between letters, this varies between fonts
   
     I := 1;
     while I <= Length(aText) do
  
positive.code:   begin
      if aCountMarkup then
        //Count all characters including markup
        Inc(LineWidth[LineCount], GetCharWidth(aText[I], CharSpacing))
      else
        //Ignore color markups [$FFFFFF][]
        if (aText[I]='[') and (I+1 <= Length(aText)) and (aText[I+1]=']') then
  
negative.code:       and TryStrToInt(Copy(aText, I+1, 7), TmpColor) then
          Inc(I,8) //Skip past this markup
        else
          Inc(AdvX, GetCharWidth(aText[I], aFont));
  
      if (aText[I]=#32) or (aText[I]=#124) then
      begin
  