HPDFResolveHeadlessTextOrder

function HPDFResolveHeadlessTextOrder(const Text: UnicodeString;
  MaximumUnits: Integer; CancellationToken: THPDFCancellationToken;
  ParagraphDirection: THPDFHeadlessTextDirection = htdAuto): THPDFHeadlessTextOrder;

Resuelve el mapeo escalar lógico a visual, los embedding levels y los ítems de script de un párrafo Unicode real a través de las librerías nativas FriBidi y HarfBuzz

MaximumUnits es un presupuesto UTF-16 positivo no mayor a 131070; los surrogates malformados y los separadores de párrafo CR, LF, NEL, LS o PS fallan, y un párrafo vacío devuelve arreglos vacíos

Cada arreglo tiene Length(Text) entradas; ambas unidades UTF-16 de un escalar suplementario comparten su posición visual escalar, embedding level y script tag

VisualPositions contiene posiciones visuales escalares con base cero, Levels contiene embedding levels de FriBidi y Scripts contiene script tags de HarfBuzz representados como valores Cardinal

BaseRightToLeft registra la dirección de párrafo resuelta; los valores de script common e inherited adquieren el contexto de script de párrafo adyacente para dividir ítems de estilo

La cancelación se observa durante la decodificación Unicode, la clasificación de scripts y el mapeo de ítems; llama a esta función con un ParagraphDirection explícito al conservar la dirección original entre líneas envueltas

Ver THPDFHeadlessTextOrder, THPDFHeadlessTextDirection y HPDFShapeHeadlessTextSpan