Automatic XFA rich captions

Units: HPDFXFA, HPDFXFAHeadless en HPDFHeadlessAppearance

HPDFXFAWriteHeadlessPDF consumeert effectieve checkbox- en radio-caption-waarden rechtstreeks vanuit opgeslagen XDP en creëert echte native appearance-Forms met embedded fonts

Effectieve caption-content

Scalar caption-waarden en exData XHTML-body-content worden native tekst; de body moet de http://www.w3.org/1999/xhtml-namespace gebruiken

Een partiele herhaalde-instance-formulier-overlay wijzigt de tekst en attributes van het bijbehorende template-element met behoud van ongewijzigde template-siblings en diens XHTML-namespace

Een geslaagde exData.loadXML-whole-payload-vervanging levert diens echt geïmporteerde body aan in plaats van verouderde template-content terug te voegen in de caption

Comments en processing instructions blijven in de originele opgeslagen XDP maar worden weggelaten uit de rendering-kopie, dus diens payloads worden nooit zichtbare caption-tekst

De rendering-kopie is begrensd op 4096 nodes, diepte 64, 65536 overlay-werkstappen en 1 MiB gerekende bron- en geserialiseerde XHTML; de native decoder en appearance-builders behouden diens eigen run-, glyph- en bytelimieten

Echte fontfaces en -stijlen

Lever CaptionFontFamilies aan voor echte regular-, bold-, italic- en bold-italic-programma's en benoemde families

De bestaande native XHTML-decoder lost inline stijlen, paragraafgrenzen, family-lijsten, kleuren, groottes, underline- en strike-formatting op; scalar caption-fontgrootte, -weight, -posture, -typeface en -vulkleur leveren de default stijl

Een ontbrekend gevraagd face of glyph laat preparatie falen; deze consumer fabricert geen bold- of italic-appearances en ontdekt geen externe fonts

Meting en plaatsing

Caption-meting en -schilderen gebruiken dezelfde native rich-layout en meegeleverde fontprogramma's, inclusief echte glyph-advances, stijlspecifieke ascent en descent, gemeenschappelijke regelbaselines en wrapping

Een vaste linker- of rechterreserve beperkt de tekstbreedte; een positieve boven- of onderreserve staat wrapping toe binnen de beschikbare veldbreedte

Een weggelaten reserve, nul of de schema-default -1 gebruikt natuurlijke caption-omvang zonder automatische tekstwrapping; expliciete paragraafgrenzen blijven regeleindes, en tekst die een vaste veldrechthoek overschrijdt wordt geclipt

Automatische linker- en rechter-captions gebruiken diens natuurlijke breedte; inline-captions negeren expliciete reserve tijdens zowel meting als plaatsing

Caption-marges verkleinen de echte tekstregio, en caption-horizontale en -verticale uitlijning sturen de resulterende appearance-plaatsing

Het reserve-gedrag volgt de XFA 3.3 caption reserve-definitie

Natuurlijke hoogte omvat de finale font-metric-regelomvang plus de native tweepunts-padding aan elke kant; hij sluit ongebruikte afsluitende leading na de laatste regel uit

Verborgen en inactive captions verbruiken geen regio; onzichtbare captions reserveren diens gemeten regio zonder caption-glyphs te schilderen of te rekenen

Eén echte caption-Form wordt gedeeld over de off-, on- en neutral-statussen van dezelfde widget; herhaalde instances behouden onafhankelijke content- en stijlgrafen

Paragraafmarge en custom line-height-CSS, caption-afbeeldingen en andere nontext-caption-payloads, pushbutton-rich-captions en latere interactieve appearance-herbouw behouden apart consumer-werk

Transacties en acceptatie

Een geslaagde native property-event kan worden opgeslagen en herladen vóór automatische PDF-creatie; scriptfalen herstelt exacte native XML-bytes, en preparatie-budget- of annuleringsfalen behoudt destination-bytes, -lengte en -positie

Writes naar de destination beginnen pas nadat de complete candidate slaagt; een fout vanuit de eigen stream-write van de aanroeper volgt de semantics van die stream en kan niet worden teruggedraaid voor een willekeurige niet-seekable destination

Tests/Linux/XFAHeadlessRichCaptionTests.pas produceert echte gestijlde, gewrapte, family-gekozen en niet-zichtbare caption-PDF's; XFAHeadlessRichCaptionRuntimeTests.pas dekt herhaalde overlays, hele XML-vervanging en rollback

XFAHeadlessRichCaptionBudgetTests.pas oefent echte resource-falen en gekozen annuleringsgrenzen, terwijl HeadlessTextExtentTests.pas de gemeten native regel-omvangen blootlegt

Verify-XFAHeadlessRichCaptions.py inspecteert opgeslagen PDF-grafen, exacte meegeleverde fontprogramma-bytes, gedeelde referenties, Unicode-tekst, raw tekstmatrices, fontTools-metrics en MuPDF-gerenderde pixels zonder een reader-UI te openen

Read-only TextHeight · Boolean callback metadata · Boolean markers and states