Native Linux C ABI form interchange
Użyj istniejącego wersjonowanego wejścia hpdf_document_execute_json_v1 i rekordu hpdf_operation_v1, aby eksportować albo importować wartości AcroForm skalarne i ograniczone rich jako FDF albo XFDF
Wersja ABI, eksportowane symbole i layout rekordów callbacków pozostają niezmienione
| Operacja | InputIO | OutputIO | ResultIO |
|---|---|---|---|
forms.export | Opcjonalne wejście PDF; w przeciwnym razie użyj załadowanego dokumentu | Rzeczywiste bajty FDF albo XFDF | Format JSON, typ mediów, liczba pól i liczba bajtów wyjścia |
forms.import | Wymagane bajty FDF albo XFDF; PDF docelowy musi być już załadowany | Przygotowane zaktualizowane bajty PDF | Format JSON, typ mediów, liczba pól i liczba zmienionych pól |
Obie operacje wymagają, by format był dokładnie fdf albo xfdf, z schemaVersion ustawionym na 1
{"schemaVersion":1,"type":"forms.export","format":"xfdf"}
{"schemaVersion":1,"type":"forms.import","format":"fdf","fontFamily":"DejaVu Sans","fontSize":12}
Obsługiwane wartości obejmują zagnieżdżone pola tekstowe Unicode, stany eksportu checkbox i radio, wybory skalarne i wybory wielokrotne; akceptowane są UTF-8 i UTF-16 XFDF z BOM
FDF RV i XFDF value-richtext używają profilu rich inline-xhtml-v1, z rzeczywistymi programami fontów regular, bold, italic i bold-italic wybieranymi przez fontFamily
Pola podpisów i pushbutton są reprezentowane przez swoje nazwy bez importowanych wartości, zachowując zapełnione podpisy i istniejące zachowanie przycisków
Import regeneruje prawdziwe wyglądy i zachowuje uwierzytelnione szyfrowanie AES R5/R6, pola read-only, uprawnienia DocMDP i blokady FieldMDP
Opcjonalny signaturePolicy akceptuje requireCAdES, requireTimestamp, requireTimestampRevocation, istniejące ustawienia pliku zaufania albo PEM i revocationInfo używając schematu opcji podpisywania
Jawna podpisana polityka revokacji weryfikuje rzeczywiste osadzone atrybuty podpisu, łącznie z tymi w znaczniku czasu dokumentu RFC 3161; zewnętrznie dostarczone bajty statusu nie mogą zastąpić brakującego wymaganego atrybutu
Opcjonalny formDataLimits zawiera dodatnie całkowite ustawienia maxBytes, maxFields, maxObjects, maxDepth, maxValues, maxValueCodeUnits i maxTotalCodeUnits, ograniczone natywnymi defaultami i pojemnością operacji
Istniejące limits.memoryBytes, outputBytes i resultBytes dodatkowo ograniczają przygotowanie i publikację; wyczerpany limit wymiany zwraca HPDF_STATUS_BUDGET_EXCEEDED
Callbacki wykonują się synchronicznie na wątku wywołującym i mogą zwracać częściowe odczyty albo zapisy; anulowanie jest obserwowane podczas czytania wejścia formularzy, parsowania, przygotowania wyglądów i publikacji wyniku
Załadowany handle celu commituje dopiero po sukcesie callbacków zaktualizowanego PDF i wyniku JSON; błędy callbacków albo anulowanie zachowuje jego poprzedni stan, podczas gdy bajty już zaakceptowane przez posiadane przez wywołującego ujście pozostają jego odpowiedzialnością
Operacje XFDF adnotacji używają odrębnego profilu append z referencjami popup/odpowiedzi i osadzonymi strumieniami plików albo dźwięków
Dowolny layout CSS, osadzone pliki FDF, dowolne akcje i przyrostowa wymiana rewizji FDF pozostają poza profilem form-data
Native Linux C ABI · Opcje podpisywania i zaufania · Natywna transakcja importu