HPDFShapeHeadlessTextSpan
function HPDFShapeHeadlessTextSpan(const Context: UnicodeString;
FirstUnit, UnitCount: Integer; const FontBytes: SysUtils.TBytes;
MaximumGlyphs: Integer; CancellationToken: THPDFCancellationToken;
CharacterAdvance: Double = 0; WordAdvance: Double = 0;
ParagraphDirection: THPDFHeadlessTextDirection = htdAuto): THPDFHeadlessShapedGlyphs;
Formt nur einen ausgewählten UTF-16-Span mit dem tatsächlichen OpenType-Font des Aufrufers und behält dabei den kompletten umgebenden Absatz als HarfBuzz-Pre-Kontext und Post-Kontext
FirstUnit ist ein nullbasierter UTF-16-Offset und UnitCount eine UTF-16-Länge; keine der Grenzen darf ein Surrogatpaar zerschneiden, und ein Span der Länge null liefert keine Glyphen
FriBidi löst die Embedding-Levels über den kompletten Absatz auf; HarfBuzz erhält das aufgelöste Skript und formt ausgewählte Items innerhalb jedes visuellen Runs, wobei arabische Verbindungsformen und gespiegelte Interpunktion erhalten bleiben
Zurückgegebene SourceOffset-Werte beziehen sich auf den ausgewählten Span, UnicodeText bewahrt jeden tatsächlich ausgewählten Cluster, und Glyphen-Vorschübe und -Offsets nutzen 1000er-Font-Koordinaten
CharacterAdvance greift einmal pro geformtem Cluster, ausgenommen Cluster, die nur Unicode-Richtungssteuerzeichen enthalten; WordAdvance greift bei einem U+0020-Cluster, und beide müssen endlich sein und dieselben Koordinaten wie Advance verwenden
ParagraphDirection darf eine bestehende Links-nach-rechts- oder Rechts-nach-links-Ausrichtung des Absatzes bewahren, wenn eine physikalisch umbrochene Zeile geformt wird, deren erstes starkes Zeichen vom Originalabsatz abweicht
Die bestehenden Input- und Glyphen-Budgets, Font-Abdeckungsprüfungen, das Cancellation Token und die Anforderungen an native Runtime-Abhängigkeiten gelten auch für diese Funktion
Ein teilweiser Span behält den Verbindungskontext, positioniert aber ein anders stilisiertes kombinierendes Zeichen nicht unabhängig gegen eine Basis-Glyphe aus einem anderen Font; nutze volles Cluster-Shaping, wenn ein Font den gesamten Cluster abdeckt
Siehe HPDFShapeHeadlessText, HPDFResolveHeadlessTextOrder und kontextuelle Rich-Text-Appearances