Zmienne i kolorowe czcionki OpenType
HotPDF może przeglądać osie fvar i nazwane instancje, sprawdzać wybrane współrzędne oraz wytwarzać statyczną instancję przed normalną instalacją czcionek, podmianą podzbiorów i trwałą pamięcią podręczną
Przepływ pracy ze zmiennymi czcionkami
PDF.InspectVariableFont(FontPath, Axes, Instances);
PDF.SetVariableFontAxis('wght', 650);
PDF.RegisterUnicodeTTF(FontPath);
Czcionki OpenType CFF2 są instancjonowane wewnętrznie o współrzędnych domyślnych lub wybranych, w tym mapowanie fvar i avar 1.0 oraz 2.0, stan vsindex per słownik czcionki, ocena blend, rekurencyjne lokalne i globalne podprogramy oraz delty metryk HVAR, VVAR i MVAR
Zmienne czcionki TrueType z obrysami glyf są instancjonowane wewnętrznie dla współrzędnych niedomyślnych. Potok ocenia współdzielone i prywatne krotki gvar, stosuje interpolację IUP, aktualizuje proste obrysy i przesunięcia złożone, rozpoznaje metryki punktów fantomowych poziomych i pionowych, wtapia MVAR, przebudowuje zwarte dane glifów i loca oraz usuwa tabele zmienności z kontrolującego sumę kontrolną statycznego sfnt
OnVariableFontInstance jest opcjonalne dla czcionek zmiennych CFF2 i TrueType. Może zastąpić niedomyślną instancję wewnętrzną, zwracając prawidłowy statyczny sfnt bez tabeli fvar
Rozpoznane współrzędne pozostają dostępne przez GetRegisteredVariableFontAxes i stają się częścią zainstalowanej i zapisanej w pamięci podręcznej zawartości czcionki
Instancjonowanie niskiego poziomu, podzbiory i bezpieczeństwo
HPDFIsCFF2Font, HPDFInstantiateCFF2Font, HPDFSubsetCFF2Font, HPDFIsTrueTypeVariableFont i HPDFInstantiateTrueTypeVariableFont wystawiają przepływy pracy tablic bajtowych dla wywołujących, którzy już zarządzają kontenerami czcionek
Statyczne wyjście zachowuje identyfikatory glifów i programy podpowiadania podczas przebudowywania tabel sfnt i sum kontrolnych. Ścieżka CFF2 zachowuje również dane prywatne per słownik czcionki oraz macierze czcionek
Źle uformowane przesunięcia, nieprawidłowe struktury zmienności, nadmierna głębokość podprogramów, limity operacji i rozszerzone limity CharString zawodzą bezpiecznie zamiast zwracać częściowo zinstancjonowaną czcionkę
Przepływ pracy z kolorowymi glifami
GetRegisteredColorGlyphInfo wykrywa warstwy COLR i CPAL, dokumenty glifów SVG, odwzorowania CBDT/CBLC i odwzorowania sbix dla zarejestrowanej czcionki
DrawRegisteredColorGlyph rysuje warstwy COLR v0, ograniczone grafy malowania COLR v1, ograniczone bezpieczne dokumenty SVG, obrazy PNG CBDT i obrazy PNG lub JPEG sbix natywnie
COLR v1 obsługuje warstwowe przycięcia glifów, wypełnienia liniowe jednolite i wieloprzystankowe, wypełnienia promieniowe, wypełnienia miotłowe, transformacje afiniczne, wielokrotne kolorowe glify, kolejność źródła i celu oraz kompozyty mieszania PDF
Natywny profil SVG obsługuje ścieżki, prostokąty, koła, elipsy, linie, wielokąty, polilinie, dziedziczone wypełnienia liniowe i obrysy jednolite, transformacje afiniczne oraz dokumenty SVG skompresowane gzip
THPDFColorGlyphRasterizeEvent pozostaje wyjściem zapasowym dla nieobsługiwanych funkcji SVG, nieobsługiwanych trybów Porter-Duff, nieprzezroczystości, gradientów i wyjścia rastrowego specyficznego dla aplikacji
THPDFOpenTypeColorGlyphInfo.COLRv1Paints wystawia sprawdzony płaski DAG przez rekordy THPDFCOLRv1Paint, THPDFCOLRv1ColorStop i THPDFCOLRv1Transform do przeglądu bez ponownego analizowania bajtów czcionki
Wywołujący wybiera paletę i docelowy rozmiar pikseli, aby wybór odwzorowania i wyjście rastrowe pozostały deterministyczne