Nativ rich-utväxling av formulärdata via C ABI i Linux
Den befintliga operationen forms.import accepterar FDF RV och XFDF value-richtext via anroparens versionerade InputIO-callbacks och publicerar en genuint uppdaterad PDF via OutputIO
ABI-versionen V1, exporterade symboler och callbacktabellens layout är oförändrade; denna bindning riktar sig mot nativ Linux x64
{"schemaVersion":1,"type":"forms.import","format":"xfdf","fontFamily":"DejaVu Sans","fontSize":12}
Mål-PDF:en måste redan vara inläst; InputIO levererar de faktiska formulärdata-bytes, inte en till PDF
Profilen inline-xhtml-v1 bevarar blandad Unicode-textordning, stycke- och explicita radbrytningar, ärvda inline-teckensnittsstorlekar, RGB-färger, vikt, kursiv, understrykning, genomstrykning och styckejustering via den begränsade nativa XHTML-avkodaren
Valfria namngivna rich-teckensnittsfamiljer väljer konfigurerade program med ärvda CSS-familjelistor; godtycklig CSS-layout, externa stilmallar, tabeller, bilder och vertikal justering är separata förmågor
fontFamily väljer teckensnittsleverantörens faktiska program för regular, bold, italic och bold-italic; endast stilar som de faktiska rich-värdena kräver laddas, tillsammans med det vanliga program som skalära fält använder
Deploymentens Fontconfig-konfiguration måste tillhandahålla önskad familj och varianter; normal leverantörsfallback gäller när en begärd variant saknas, och fontStyles beskriver de laddade stilplatserna i stället för att intyga installerade teckensnittsvarianter
Teckensnittsprogrammen återvänder till anroparen inuti den förberedda PDF:ens inbäddade teckensnittsströmmar och verkliga appearances; inga teckensnittsfilsökvägar exponeras i JSON-svaret
När fontSize är noll använder ostylad XHTML avkodarens standardvärde på 12 punkter; explicit stödda XHTML-teckensnittsstorlekar behåller egna värden
| Resultatfält | Betydelse |
|---|---|
updated | Antal ändrade terminalfält, inklusive stödda ändringar enbart av stil |
richFieldCount | Antal rich-fält i den avkodade indatan, inklusive oförändrade ekvivalenta värden |
fontStyles | Faktiskt laddade teckensnittsplatser i ordningen regular, bold, italic, boldItalic |
richXMLProfile | inline-xhtml-v1 eller inline-xhtml-font-families-v1 när den avkodade indatan innehåller rich-fält |
fontFamilies | Konfigurerade familjeetiketter när den valfria arrayen med namngivna familjer levereras |
Ekvivalent kanonisk och icke-kanonisk rich-markup är idempotent när dess text och stödda stilar matchar; oförändrade skrivskyddade fält bevarar sin RV, medan olika stödda stilar upprätthåller skrivskyddet
En import med noll ändringar publicerar exakt den committade privata PDF-snapshotten, inklusive befintliga signerade eller krypterade revisioner, utan att samla på sig tomma korsreferensrevisioner; ändrade inbytes eller underliggande filer från anroparen ersätter inte den inlästa snapshotten
Importen bevarar autentiserad AES-säkerhet, faktiska signerade revisioner, DocMDP-beslut P1/P2/P3 samt FieldMDP-lås via den nativa rich-importtransaktionen
De kombinerade teckensnittsprogrammen begränsas till en fjärdedel av limits.memoryBytes, utöver den nativa gränsen per teckensnitt; befintliga gränser för formulärdata, glyphs, objekt, utmatning och resultat gäller fortsatt
Callbacks körs synkront på anropande tråd; partiella in- och utmatningscallbacks accepteras, och avbrott förblir aktivt under parsning, teckensnittsladdning, appearance-förberedelse och publicering
Handtaget committar först efter att både PDF- och JSON-callbacks lyckats; ett callback-fel eller avbrott bevarar dess tidigare tillstånd, medan anroparen kastar de partiella bytes som en mottagare redan fått
Kapabiliteter annonserar formData.richXML=true, den kompatibla standardprofilen richXMLProfile=inline-xhtml-v1, båda richXMLProfiles, valfritt val av namngivna familjer med upp till sexton etiketter samt de fyra stödda fontStyles; annoteringsutväxling förblir false
Interna stilmallar tillämpar avgränsade selektorer, vikt, specificitet och källordning på faktiskt importerade rich-värden och sparade utseenden; upprepade ekvivalenta importer och misslyckad publicering behåller de befintliga transaktionsgarantierna
Formulärdata-callbacks och gränser · Nativt Linux C ABI · Förtroendealternativ för signatur
richTextResources tillhandahåller länkad och importerad CSS-text genom den oförändrade execute-json-v1-operationen
Tolkning av JSON-operationer bevarar eskaperade NUL och Unicode-objektnycklar på båda stödda FPC-kompilatorlinjerna; en NUL i richTextResources avvisas innan dokumentet ändras, i stället för att tyst försvinna under JSON-avkodning
Den återanvändbara grinden Tests/Linux/JSONOperationUnicode/Run.py kontrollerar den valda produktparsern, medan den faktiska callbacksviten även kontrollerar det kompilerade delade biblioteket och PDF-transaktionen