Automatic XFA Boolean styles and captions

Units: HPDFXFA en HPDFXFAHeadless

HPDFXFAWriteHeadlessPDF consumeert effectieve checkButton-properties en creëert native checkbox- en radio-appearance-streams vanuit de echte XFA-layout

Markers en outlines

De checkButton-grootte defaultt naar 10pt en stuurt de vierkante marker-regio binnen de content-regio van het veld; expliciete size-metingen, veld- en UI-marges en horizontale en verticale paragraafuitlijning bepalen diens positie

De square- en round-vormen bepalen de outline; de default geclaimde markering is een kruis voor een vierkante outline en een gevulde cirkel voor een ronde outline, volgens de XFA 3.3 checkButton-specificatie

Expliciete check-, circle-, cross-, diamond-, square- en star-markeringen gebruiken echte vector-paden; ze hangen niet af van een checkbox-symbool in het meegeleverde font

De eerste UI-rand-edge levert diens dikte, kleur en zichtbaarheid; de default outline is zwart en 0.5pt breed, terwijl de effectieve veldfont-kleur de geclaimde markeringskleur levert

De markering krimpt naar de resterende content-regio wanneer diens geconfigureerde grootte die regio overschrijdt; een caption of marge die geen content-regio overlaat, laat candidate-voorbereiding falen

Scalar Unicode-captions

Scalar caption-tekst behoudt Unicode en delimiters exact en wordt een echte embedded-font Form XObject waarnaar door elke off-, on- en neutral-appearance van die widget wordt verwezen

De caption deelt één appearance- en font-graaf over diens statussen heen, en diens UTF-16-units worden één keer per widget geteld in TXFAHeadlessPDFResult.GlyphUnits

Left en right reserveren een caption-breedte, terwijl top en bottom een hoogte reserveren; een weggelaten of nul-reserve gebruikt de echte glyph-advances en regelmetrieken van het meegeleverde font om de natuurlijke caption-omvang te berekenen

Inline-captions gaan aan de markering vooraf en negeren een expliciete reserve; caption-marges insetten de tekst binnen diens toegewezen regio

Een caption-fontgrootte en -vulkleur overschrijven de grootte en kleur van het veld; caption-paragraafuitlijning overschrijft velduitlijning, terwijl CaptionFontFamilies echte stijlfaces en benoemde families kan aanleveren

Verborgen en inactive captions beslaan geen regio en alloceren geen fontgraaf; onzichtbare captions behouden diens regio zonder caption-glyphs te schilderen of toe te wijzen

De rich caption-consumer consumeert daarnaast effectieve XHTML, echte geconfigureerde stijlfaces en family-selectie, gemengde regelmetrieken en gewrapte caption-hoogten

Derde checkbox-statussen

Wanneer allowNeutral aan staat, is het derde opgeslagen item de neutrale checkbox-export; matchende waarden behouden een distincte native /V en widget /AS met diens eigen /AP /N-entry

De neutrale appearance tekent de lege outline en dezelfde caption; hij tekent de geclaimde markering niet

De checkbox /Opt-array houdt één on-export-entry vast voor diens enkele widget, zoals het PDF button-veldmodel vereist; een derde opgeslagen appearance-status voegt geen tweede widgetoptie toe

Lege exports, de gereserveerde Off-naam en namen beginnend met XFAOn ontvangen collision-vrije native status-aliassen met diens UTF-8-bytes als hoofdletter-hexadecimaal na XFAOn; de derde originele export kan worden hersteld uit diens opgeslagen statusnaam

Een radio-member negeert een derde item en behoudt diens bestaande twee-status-appearance-dictionary en template/data-scope-groepsidentiteit

De adapter persisteert de initiële statusgraaf; een latere native button-edit-operatie van een applicatie heeft diens eigen status- en appearance-contract

Native instance-properties en transacties

De checkButton-grootte-, vorm-, markerings- en allowNeutral-defaults zijn beschikbaar via het native runtime-schema; afwezige checkButton-border- en -margin-properties kunnen via de bestaande property-transactie worden aangemaakt

Effectieve herhaalde-instance-checkButton-, caption-, font- en margin-properties overleven SaveToBytes en sturen direct de bijbehorende automatisch aangemaakte PDF-widget; de eerste herhaalde instance behoudt diens onafhankelijke properties

Letterlijke UTF-8 event-bron en Unicode-binding-waarden behouden diens scalars voordat opgeslagen XDP wordt geconverteerd, inclusief caption-tekst gewijzigd door een native JavaScript-event; zie HPDFXFAExecuteJavaScriptEvent

Scriptfalen herstelt exacte native XML vóór creatie, en preparatiefalen behoudt destination-positie, -lengte en -bytes; glyph-, object- en fontbudgetten en annulering behouden de transactiegrens van de automatische creator

Acceptatiebronnen

Tests/Linux/XFAHeadlessBooleanStylesTests.pas produceert echte markeringsparen, captions, neutrale en gereserveerde statussen, herhaalde-instance-scriptwijzigingen en rollback-cases zonder reader-UI

Tests/Linux/Verify-XFAHeadlessBooleanStyles.py checkt echte opgeslagen status-dictionaries, gedeelde font-resources, caption-plaatsing, Unicode-tekst en distincte markeringspixels met pypdf en MuPDF

Boolean callback metadata beschrijft de additieve transport-hints die de native creator consumeert