Online
Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.063 Beiträge
Delphi 12 Athens
|
AW: TextWidth mit TRichEdit mit verschieden Unicode-Fonts
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.
|