HPDFShapeHeadlessText
function HPDFShapeHeadlessText(const Text: UnicodeString;
const FontBytes: SysUtils.TBytes; MaximumGlyphs: Integer;
CancellationToken: THPDFCancellationToken;
MaximumLineAdvance: Double = 0; CharacterAdvance: Double = 0;
WordAdvance: Double = 0): THPDFHeadlessShapedGlyphs;
Używa dostarczonego przez wywołującego fontu OpenType przez HarfBuzz i rozpoznaje wizualne runy Unicode przez FriBidi, zachowując klastry i pozycjonowanie w współrzędnych fontu 1000 jednostek
Akapity CR/LF są kształtowane niezależnie; dodatni MaximumLineAdvance żąda logicznego zawijania klastrów przed finalnym przebiegiem shapingu
Automatyczne fizyczne linie dziedziczą kierunkowe osadzania, nadpisania, isolates i parowane nawiasy kompletnego oryginalnego akapitu; każda linia ma własny reset białych znaków, wizualne przestawienie i kontekst łączenia HarfBuzz
Porządek akapitu jest rozpoznawany raz i ponownie używany bez mutacji między fizycznymi liniami; rzeczywisty separator CR/LF zaczyna nowy akapit i resetuje stan kontrolek
Gdy automatyczne zawijanie zmienia tekst, SourceOffset pozostaje względny wobec znormalizowanej zawiniętej sekwencji logicznej, łącznie z wstawionymi złamaniami linii U+000A i istniejącym usunięciem przerywającej spacji; UnicodeText glifu, wartości pól i ActualText PDF zachowują ustalone kontrakty logiczne
CharacterAdvance i WordAdvance to opcjonalne skończone przyrosty w tych samych współrzędnych 1000 jednostek fontu; przyrost znaków stosuje się raz na ukształtowany klaster, łącznie z finalnym, poza klastrami zawierającymi wyłącznie kontrolki kierunkowe Unicode, a przyrost słów dotyczy klastra U+0020; oba są wliczane do logicznego zawijania i zwróconych przyrostów glifów
Wejściowe i generowane glify, łącznie z wstawionymi rekordami złamań linii, są ograniczone tym samym łącznym MaximumGlyphs; wadliwe surrogate i brakujące wymagane glify zawodzą, a anulowanie jest sprawdzane między akapitami, runami, cache'owanym rozpoznawaniem linii i checkpointami zawijania
Linux używa libharfbuzz.so.0 i libfribidi.so.0; Windows wymaga bibliotek o pasującej architekturze, z jawnymi ścieżkami opcjonalnie dostarczanymi przez HOTPDF_HARFBUZZ_LIBRARY i HOTPDF_FRIBIDI_LIBRARY
Dla uprawnień fontów PDF, obiektów CID, ToUnicode, linków wyglądów i wyjścia przyrostowego użyj HPDFBuildHeadlessTextAppearance albo metody wyglądów dokumentu
Windows native complex text opisuje pasujące architektury procesów i ścieżki wyszukiwania zależności runtime
Użyj HPDFShapeHeadlessTextSpan, aby ukształtować wybrany element stylu z otaczającym kontekstem akapitu, i HPDFResolveHeadlessTextOrder, aby przejrzeć rzeczywiste wizualne pozycje Unicode