Funktion HPDFShapeHeadlessTextOrderedSpan
Formt einen ausgewählten Stil-Span gegen eine komplette physikalische Zeile unter Nutzung absatzabgeleiteter Embedding-Levels, Skripte und visueller Positionen
function HPDFShapeHeadlessTextOrderedSpan(const Context: UnicodeString;
FirstUnit, UnitCount: Integer; const Order: THPDFHeadlessTextOrder;
const FontBytes: SysUtils.TBytes; MaximumGlyphs: Integer;
CancellationToken: THPDFCancellationToken;
CharacterAdvance: Double = 0; WordAdvance: Double = 0): THPDFHeadlessShapedGlyphs;
Order muss jede UTF-16-Unit des kompletten physikalischen Zeilen-Context abdecken; hol sie von HPDFResolveHeadlessTextLineOrder oder HPDFReorderHeadlessTextLine
FirstUnit und UnitCount wählen vollständige Skalare innerhalb der physikalischen Zeile; der echte HarfBuzz-Buffer erhält den umgebenden Zeilentext, während Richtung und Skript aus der aufgelösten Absatzordnung kommen
Zurückgegebene Glyphen-Source-Offsets beziehen sich auf den ausgewählten Stil-Span; Glyphen-IDs, Vorschübe und Offsets nutzen den echten eingebetteten Font und eine Skalierung von 1000 Units pro em
Die Funktion prüft passende Arrays, eindeutige visuelle Skalarränge, Embedding-Levels, Surrogate-Konsistenz, endliche Abstände, Glyphen-Limits und Abbruch; fehlerhafte Ordnung fällt nicht stillschweigend auf isolierte Richtungserkennung zurück
Zeichenabstand greift einmal pro geformtem Cluster, ausgenommen Cluster, die nur Unicode-Richtungssteuerzeichen enthalten; Wortabstand greift bei einem Leerzeichen-Cluster, und Aufrufer behalten ihren originalen logischen Wert und Stil-Text getrennt von der visuellen Glyphenordnung