Formulärutbyte via native Linux C ABI

Använd den befintliga versionshanterade ingångspunkten hpdf_document_execute_json_v1 och posten hpdf_operation_v1 för att exportera eller importera skalära och avgränsade rich AcroForm-värden som FDF eller XFDF

ABI-versionen, exporterade symboler och callback-postens layout är oförändrade

OperationInputIOOutputIOResultIO
forms.exportValfri PDF-inmatning; annars används det inlästa dokumentetFaktiska FDF- eller XFDF-bytesJSON-format, mediatyp, fältantal och antal utbytesbytes
forms.importObligatoriska FDF- eller XFDF-bytes; destinations-PDF:en måste redan vara inlästFörberedda uppdaterade PDF-bytesJSON-format, mediatyp, fältantal och antal ändrade fält

Båda operationerna kräver att format är exakt fdf eller xfdf, med schemaVersion satt till 1

{"schemaVersion":1,"type":"forms.export","format":"xfdf"}
{"schemaVersion":1,"type":"forms.import","format":"fdf","fontFamily":"DejaVu Sans","fontSize":12}

Värden som stöds omfattar nästlade Unicode-textfält, exporterade tillstånd för kryssrutor och radioknappar, skalära val och multiple choices; UTF-8 samt BOM-märkt UTF-16-XFDF accepteras

FDF RV och XFDF value-richtext använder rich-profilen inline-xhtml-v1, med faktiska reguljära, feta, kursiva samt fet-kursiva typsnittsprogram valda av fontFamily

Signatur- och tryckknappsfält representeras av sina namn utan importerade värden, vilket bevarar ifyllda signaturer och befintligt knappbeteende

Importen återskapar äkta utseenden och bevarar autentiserad AES R5/R6-kryptering, skrivskyddade fält, DocMDP-behörigheter och FieldMDP-lås

Valfri signaturePolicy accepterar requireCAdES, requireTimestamp, requireTimestampRevocation, befintlig förtroendefil eller PEM-inställningar samt revocationInfo enligt schemat för signeringsalternativ

En explicit signerad återkallningspolicy verifierar de faktiska inbäddade signaturattributen, även sådana i en RFC 3161-dokumenttidstämpel; externt tillhandahållna statusbytes kan inte ersätta ett saknat obligatoriskt attribut

Valfri formDataLimits innehåller positiva heltalsinställningar för maxBytes, maxFields, maxObjects, maxDepth, maxValues, maxValueCodeUnits och maxTotalCodeUnits, avgränsade av de nativa standardvärdena och operationens kapacitet

Befintliga limits.memoryBytes, outputBytes och resultBytes begränsar dessutom beredning och publicering; en förbrukad utbytesgräns returnerar HPDF_STATUS_BUDGET_EXCEEDED

Callbacks körs synkront på anropande tråd och kan returnera partiella läsningar eller skrivningar; avbrott observeras vid läsning av formulärinmatning, tolkning, förberedning av utseenden och publicering av resultatet

Den inlästa destinationshandlen checkas in först när uppdaterade PDF- och JSON-resultatcallbacks har lyckats; callback-fel eller avbrott bevarar dess tidigare tillstånd, medan bytes som redan accepterats av en mottagare ägd av anroparen förblir anroparens ansvar

XFDF-operationer för anteckningar använder en separat append-profil med popup- och svarsreferenser samt inbäddade fil- eller ljudströmmar

Godtycklig CSS-layout, inbäddade FDF-filer, godtyckliga åtgärder och inkrementellt utbyte av FDF-revisioner ligger fortfarande utanför formulärdataprofilen

Native Linux C ABI · Signerings- och förtroendealternativ · Native importtransaktion