Formulärsutseenden i native Linux ABI

hpdf_document_execute_json_v1 fyller inlästa AcroForm-fält via forms.fill, genererar matchande normala utseenden som standard och behåller PDF:ens ursprungliga revisioner, lösenord, säkerhetsdiktionär och dokument-ID:n

{"schemaVersion":1,"type":"forms.fill","fields":[
  {"name":"Notes","value":"First line Ω\nSecond café","fontSize":13},
  {"name":"Combo","value":"two"},
  {"name":"Colors","values":["blue","red"]},
  {"name":"Check","checked":true},
  {"name":"Radio","checked":true,"onState":"B"},
  {"name":"Submit","caption":"Send Ω"}
]}

Fältvärden och utseenden

Textfält accepterar value eller typade richTextRuns; ett angivet värde tillsammans med richTextRuns måste exakt matcha den härledda enkla texten, inklusive CR som avsnittsseparator

Enkla utseenden respekterar ärvda inställningar för flerradsläge, comb, justering och rotation och bäddar in det valda Unicode-TrueType-typsnittet; stylade runs bär explicit typsnittsstil, storlek, färg, justering, avsnittsbrytningar och dekorationer

Lösenordstextfält maskerar sina utseenden och glyfmappningar med en punkt per Unicode-skalär men behåller det faktiskt lagrade fältvärdet och originalkrypteringen; filvalsfält visar sin litterala Unicode-sökväg utan att öppna den valda filen

Valfält accepterar en value-sträng eller en komplett values-array, aldrig båda; exportvärden mappas till visningstext för option, flera val sorteras efter option-index, och en tom array rensar valet

Kryssrutor och radiogrupper kräver boolesk checked; onState har standardvärdet Yes och väljer matchande radiowidget när den anges explicit, medan rensning uppdaterar både fält- och widgettillstånd

Tryckknappar kräver caption, som målas med det valda inbäddade Unicode-typsnittet

forms.read inkluderar den kompletta values-arrayen för varje valfält, även en tom array efter rensning; den skalära medlemmen value förblir tillgänglig

För rich-fält returnerar forms.read även den lagrade XHTML-richText-strängen; vanliga värdeersättningar synkroniserar RV, och stylade runs kräver utseendegenerering

Alternativ och publicering

Varje redigering accepterar fontFamily (standard DejaVu Sans), fontSize (12), padding (2), characterSpacing (0), wordSpacing (0) och paintWhiteBackground (true)

Typade rich-redigeringar kan också använda fontFamilies-array:er och familjval per run, och behåller det ursprungliga enfamiljsbeteendet när arrayen saknas

Textredigeringar kan explicit sätta appearance:false för uppdateringar enbart av värdet; redigeringar av val och knappar kräver utseendegenerering

Okända fält, dubblerade redigeringar, ogiltiga val, för stora comb-värden, felutformade parametrar, avbrott, resursbrist och misslyckade callbacks lämnar det aktuella inlästa dokumentet oförändrat; utmatningen förbereds innan någon binär publiceringscallback körs

Operationsresultatet innehåller updated och den aktuella fältlistan; upptäck utseendetyper som stöds via kapabilitetsarrayen formAppearances

Acceptansen för native C ABI genererar faktiska formulärsutmatningar i klartext samt med AES R5/R6; oberoende kontroller med pypdf och MuPDF granskar valindex, widgettillstånd, inbäddade typsnitt, Unicode-värden, kryptering och faktiska utseendepixlar

Native Linux C ABI · Signeringsworkflows · Återstående leveransplan