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