Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.063 Beiträge
 
Delphi 12 Athens
 
#2

AW: TextWidth mit TRichEdit mit verschieden Unicode-Fonts

  Alt 27. Jan 2011, 21:27
Du zerlegst die Zeile in Teile mit je einer einzigen Schriftformatierung,
rechnest alle Teile einzeln aus
und rechnest dann die Ergebnisse zusammen.

(notfalls auch Zeichen für Zeichen, aber bei einigen Schriftarten könnten da ungenauigkeiten entstehen)

Also, man setzt eine Variable auf 0,
man fängt nun beim ersten Zeichen an,
*,
schaut welche nachfolgenen Zeichen die selbe Formatierung haben,
rechnet davon die Breite aus und addiert dieses auf die Variable,
geht nun zum nächsten Zeichen, und macht beim * weiter, bis die Zeile zuende ist.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat