Natywna wymiana XFDF adnotacji
HPDFHeadlessXFDF eksportuje zmapowane adnotacje z wczytanego natywnego grafu PDF i przygotowuje importy adnotacji XFDF jako niezależną rewizję przyrostową
Użyj HPDFExportHeadlessAnnotationsXFDF dla bajtów XML UTF-8 i SaveAnnotationsXFDFToFile, by dokleić adnotacje do istniejącego dokumentu bez zmieniania wczytanego grafu źródła
Zmapowany profil adnotacji
Profil mapuje Text, FreeText, Line, Square, Circle, Polygon, PolyLine, Highlight, Underline, StrikeOut, Squiggly, Stamp, Ink, Caret, FileAttachment, Sound, Redact i Link
Wspólne wartości obejmują stronę, prostokąt, zawartość Unicode, autora, nazwę adnotacji, daty, temat, flagi, krycie, kolory i wspierane właściwości ramek
Wartości specyficzne dla typu obejmują współrzędne czworokątów, wierzchołki, gesty ink, zakończenia linii i geometrię linii wiodących, właściwości FreeText intent/callout/fringe/default text, stan powtórzenia Redact, akcje linków URI albo Named, zdalne akcje GoToR oraz nazwane albo jawne lokalne destynacje i akcje GoTo
Puste tablice składników koloru zachowują kolory przezroczyste; kolory źródła Gray i CMYK są mapowane na wartości RGB XFDF, a składniki RGB są kwantyzowane do sześciocyfrowej reprezentacji szesnastkowej formatu
Eksport FileAttachment preferuje nazwę pliku Unicode i zachowuje metadane plików zewnętrznych nawet, gdy nie istnieje osadzony strumień; dane plików osadzonych i dźwięków są dekodowane do ograniczonego kanonicznego base64 i importowane jako rzeczywiste strumienie pośrednie, włącznie ze strumieniami pustymi
Adnotacje Popup są reprezentowane jako zagnieżdżone elementy popup i importowane z pośrednimi linkami Parent, Popup i strony; odpowiedzi rozwiązują się w drugim przejściu względem istniejących i świeżo doklejonych nazw adnotacji, włącznie z referencjami w przód
Zawartość rich zachowuje przestrzeń nazw XHTML, uporządkowany mieszany tekst i dziedziczone wiązania przestrzeni nazw
Transakcje i uprawnienia
Importy doklejają adnotacje i odrzucają zduplikowane nazwy, niejednoznaczne albo brakujące cele odpowiedzi i niepoprawne zmapowane wartości przed publikacją
Nieudany albo anulowany import zachowuje plik docelowy i wczytany graf źródła; udany import też pozostawia wczytane źródło niezmienione, więc wczytaj zapisany plik, gdy chcesz przyjąć jego nową rewizję
Eksport wymaga uprawnienia ekstrakcji, a import uprawnienia adnotacji; bezpieczeństwo AES-256 R5/R6 pozostaje w zapisanej rewizji
Rzeczywista polityka certyfikacji jest uwierzytelniana przez natywny workflow podpisów: P1 i P2 uniemożliwiają zmiany adnotacji, podczas gdy P3 pozwala na rewizję adnotacji zachowującą oryginalne podpisane bajty
Granice
THPDFHeadlessXFDFOptions ogranicza bajty wejścia/wyjścia, liczbę adnotacji, węzły grafu i XML, głębokość i magazyn roboczy, z kooperatywnym anulowaniem
Zmapowane liczby muszą być skończone i w wartości bezwzględnej miliona, z dodatkowymi ograniczeniami dla liczb współrzędnych, krycia, rozmiarów próbek i innych typowanych wartości
Przyjmowanie XML całego dokumentu sprawdza kodowanie, przestrzenie nazw, zduplikowane atrybuty, encje i kompletną strukturę przed mapowaniem adnotacji; przetwarzanie DTD i encji zewnętrznych jest wyłączone
Granice operacji
Transport wyglądów standardowych stampów zachowuje rzeczywiste strumienie Form i ograniczone acykliczne zasoby fontów, obrazów i grafiki przez typowany XML base64
Ogólny transport AP adnotacji, własne słowniki adnotacji, podmiana/usuwanie adnotacji, dowolne akcje i dane adnotacji FDF pozostają osobną pracą
Synteza i renderowanie wyglądów adnotacji to osobne operacje; importowanie właściwości geometrycznych i tekstowych nie tworzy strumienia AP
Inne subtypy adnotacji źródła są pomijane podczas eksportu i liczone w wyniku; zniekształcone wybrane zmapowane wartości zawodzą operację bez częściowego zwróconego XML
Natywne API Pascal działa na Windows i Linux; wersjonowane C ABI Linux wystawia też operacje adnotacji JSON oparte na callbackach, a plikowe joby Windows i callbacki V1 wystawiają tę samą zmapowaną wymianę adnotacji
Jawne usuwanie adnotacji
Usuwanie adnotacji po stronie i nazwie to osobna operacja; pominięcie adnotacji w importowanym FDF albo XFDF jej nie usuwa
Usuwanie drzewa pól Widgetów i bezpieczne wymazywanie wymagają osobnych operacji; przyrostowe usuwanie zachowuje poprzednie bajty PDF