HPDFShapeHeadlessTextOrderedSpan Function
Formar en vald stilsekvens mot en completa fysisk rad med styckehärledda inbäddningsnivåer, skript och visuella positioner
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 måste täcka varje UTF-16-enhet i den completa fysiska raden Context; hämta den från HPDFResolveHeadlessTextLineOrder eller HPDFReorderHeadlessTextLine
FirstUnit och UnitCount välj completa skalärer inom den fysiska raden; den verkliga HarfBuzz-bufferten tar emot omgivande radtext medan riktning och skript kommer från den upplösta styckeordningen
Returnerade glyfkälloroffset är relativa till den valda stilsekvensen; glyf-ID:n, avstånd och offset använder det verkliga inbäddade typsnittet och en skala på 1000 enheter per em
Funktionen validerar matchande arrayer, unika skalära visuella rangordningar, inbäddningsnivåer, surrogatkonsistens, ändligt mellanslag, glyfgränser och avbrott; felformad ordning faller inte tyst tillbaka till isolerad riktningsupptäckt
Teckenmellanslag tillämpas en gång per formad kluster utom ett kluster som enbart innehåller Unicode-riktningskontroller; ordmellanslag gäller ett mellanslagskluster, och anropare behåller sitt ursprungliga logiska värde och sin stiltext skild från visuell glyfordning