Automatiska XFA Boolean-stilar och rubriker

Enheter: HPDFXFA och HPDFXFAHeadless

HPDFXFAWriteHeadlessPDF konsumerar effektiva checkButton-egenskaper och skapar nativa appearance-strömmar för kryssrutor och radioknappar från den faktiska XFA-layouten

Markörer och konturer

checkButton-storleken har standardvärdet 10pt och styr den kvadratiska markörregionen inom fältets innehållsregion; explicita storleksmått, fält- och UI-marginaler samt styckets horisontella och vertikala justering bestämmer dess position

Formerna kvadrat och cirkel bestämmer konturen; standardmarkeringen för påslaget tillstånd är ett kors för en kvadratisk kontur och en fylld cirkel för en rund kontur, enligt XFA 3.3 checkButton-specifikationen

Markörerna check, circle, cross, diamond, square och star använder verkliga vektorsökvägar; de beror inte på att det levererade teckensnittet innehåller en kryssrutssymbol

Den första UI-kantlinjen ger tjocklek, färg och synlighet; standardkonturen är svart och 0.5pt bred, medan fältets effektiva teckensnittsfärg ger markeringens färg

Markören krymper till den återstående innehållsregionen när dess konfigurerade storlek överskrider den regionen; en rubrik eller marginal som inte lämnar någon innehållsregion får kandidatförberedelsen att misslyckas

Skalära Unicode-rubriker

Skalär rubriktext behåller Unicode och avgränsare exakt och blir ett verkligt Form-XObject med inbäddat teckensnitt som refereras från varje appearance för den widgeten i tillstånden off, on och neutral

Rubriken delar en appearance- och teckensnittsgraf över sina tillstånd, och dess UTF-16-enheter räknas en gång per widget i TXFAHeadlessPDFResult.GlyphUnits

Vänster och höger reserverar en rubrikbredd, medan topp och botten reserverar en höjd; ett utelämnat eller noll reserverat värde använder det levererade teckensnittets faktiska glyphframsteg och radmått för att beräkna rubrikens naturliga utsträckning

Inline-rubriker placeras före markören och ignorerar en explicit reservation; rubrikmarginaler skjuter in texten inom sin allokerade region

Rubrikens teckensnittsstorlek och fyllnadsfärg åsidosätter fältets storlek och färg; rubrikens styckejustering åsidosätter fältjusteringen, medan CaptionFontFamilies kan leverera faktiska stilvarianter och namngivna familjer

Dolda och inaktiva rubriker upptar ingen region och allokerar ingen teckensnittsgraf; osynliga rubriker behåller sin region utan att måla eller allokera rubrikglyphs

Rich-rubrikkonsumenten konsumerar dessutom effektiv XHTML, verkliga konfigurerade stilvarianter och familjeval, blandade radmått och radbrutna rubrikhöjder

Tredje kryssrutstillstånden

När allowNeutral är påslaget är det tredje sparade objektet den neutrala kryssruteexporten; matchande värden behåller en distinkt nativ /V och widget /AS med egen /AP /N-post

Neutral-appearancen ritar den tomma konturen och samma rubrik; den ritar inte markeringen

Kryssrutans /Opt-array behåller en on-export-post för sin enda widget, så som PDF:s knappfältmodell kräver; ett tredje sparat appearance-tillstånd lägger inte till ett andra widgetalternativ

Tomma exporter, det reserverade namnet Off och namn som börjar med XFAOn får kollisionsfria nativa tillståndsalias som använder sina UTF-8-bytes som versala hexadecimaler efter XFAOn; den ursprungliga tredje exporten kan återvinnas från sitt sparade tillståndsnamn

En radiomedlem ignorerar ett tredje objekt och behåller sitt befintliga tvåtillståndsappearance-dictionary samt sin mall-/dataidentitet inom gruppen

Adaptern bevarar det initiala tillståndsgrafen; ett programs senare nativ knappredigeringsoperation har sitt eget tillstånds- och appearance-kontrakt

Nativa instansegenskaper och transaktioner

checkButtons standardvärden för size, shape, mark och allowNeutral finns i det nativa runtime-schemat; frånvarande checkButton-egenskaper för border och margin kan skapas via den befintliga egenskapstransaktionen

Effektiva egenskaper för checkButton, caption, font och margin per upprepad instans överlever SaveToBytes och styr omedelbart motsvarande automatiskt skapade PDF-widget; den första upprepade instansen behåller sina oberoende egenskaper

Litteral UTF-8-händelsekällkod och Unicode-bindningsvärden behåller sina skalärer innan sparad XDP konverteras, inklusive rubriktext ändrad av en nativ JavaScript-händelse; se HPDFXFAExecuteJavaScriptEvent

Skriptfel återställer exakt nativ XML före skapandet, och förberedelsefel bevarar målets position, längd och bytes; glyph-, objekt- och teckensnittsbudgetar samt avbrott bevarar den automatiska skaparens transaktionsgräns

Godkännandekällor

Tests/Linux/XFAHeadlessBooleanStylesTests.pas producerar verkliga markörpar, rubriker, neutrala och reserverade tillstånd, skriptändringar per upprepad instans och rollback-fall utan läsargränssnitt

Tests/Linux/Verify-XFAHeadlessBooleanStyles.py kontrollerar faktiska sparade tillståndsdictionary, delade teckensnittsresurser, rubrikplacering, Unicode-text och distinkta markörpixlar med pypdf och MuPDF

Boolean-callback-metadata beskriver de additiva transporttips som den nativa skaparen konsumerar