HPDFResolveHeadlessTextLineOrder Function
Rozpoznaje poziomy osadzania dla jednego kompletnego logicznego akapitu i przestawia wybraną fizyczną linię, zachowując kierunkowe osadzania, nadpisania, isolates i kontekst par nawiasów rozpoczętych na wcześniejszych liniach
function HPDFResolveHeadlessTextLineOrder(const Paragraph: UnicodeString;
FirstUnit, UnitCount, MaximumUnits: Integer;
CancellationToken: THPDFCancellationToken;
ParagraphDirection: THPDFHeadlessTextDirection = htdAuto): THPDFHeadlessTextOrder;
FirstUnit to oparty na zerze offset UTF-16, a UnitCount to długość fizycznej linii, bez separatorów linii i akapitu; obie granice muszą zawierać kompletne skalary Unicode
Zwrócone tablice opisują tylko tę fizyczną linię, podczas gdy BaseRightToLeft opisuje kompletny akapit; skalary uzupełniające dzielą wizualną rangę, poziom i skrypt między obie jednostki UTF-16
Funkcja stosuje rozpoznawanie osadzania akapitu, a następnie reset białych znaków fizycznej linii i wizualne przestawienie przez skonfigurowaną natywną bibliotekę FriBidi; zachowuje tekst logiczny i sama nie kształtuje ani nie dubluje glifów
MaximumUnits musi być dodatnie i co najwyżej 131070; kompletny akapit musi mieścić się w tym budżecie, zawierać poprawne Unicode i nie mieć separatorów linii
Dla wielu linii z tego samego akapitu rozpoznaj HPDFResolveHeadlessTextOrder raz i użyj HPDFReorderHeadlessTextLine, aby uniknąć wielokrotnego przetwarzania akapitu
Przekaż każdą fizyczną linię i jej zwrócony porządek do HPDFShapeHeadlessTextOrderedSpan dla natywnego kontekstowego shapingu OpenType