HPDFShapeHeadlessTextOrderedSpan Function
Shape-t een geselecteerde style-span tegen een complete fysieke regel met paragraph-derived embedding levels, scripts en visuele posities
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 moet elke UTF-16-unit van de complete fysieke-regel-Context dekken; haal hem op via HPDFResolveHeadlessTextLineOrder of HPDFReorderHeadlessTextLine
FirstUnit en UnitCount selecteren complete scalars binnen de fysieke regel; de echte HarfBuzz-buffer ontvangt omringende regeltekst terwijl richting en script uit de opgeloste paragraph order komen
Teruggegeven glyph source-offsets zijn relatief ten opzichte van de geselecteerde style-span; glyph-ID's, advances en offsets gebruiken het echte embedded font en een schaal van 1000 units per em
De functie valideert matchende arrays, unieke scalar-visuele rangen, embedding levels, surrogate-consistentie, eindige spacing, glyph-limieten en annulering; misvormde order valt niet stilletjes terug op geïsoleerde richtingsdetectie
Character spacing wordt één keer per geshaped cluster toegepast, behalve voor een cluster dat alleen Unicode-directional controls bevat; word spacing geldt voor een space-cluster, en aanroepers houden hun oorspronkelijke logische waarde en style-tekst apart van de visuele glyph-volgorde