Automatiska XFA rich-rubriker

Enheter: HPDFXFA, HPDFXFAHeadless och HPDFHeadlessAppearance

HPDFXFAWriteHeadlessPDF konsumerar effektiva rubrikvärden för kryssrutor och radioknappar direkt från sparad XDP och skapar faktiska nativa appearance-Forms med inbäddade teckensnitt

Effektivt rubrikinnehåll

Skalära rubrikvärden och XHTML-bodyinnehåll från exData blir nativ text; bodyn måste använda namespacet http://www.w3.org/1999/xhtml

Ett partiellt formuläroverbrygg per upprepad instans ändrar motsvarande mallements text och attribut men behåller oförändrade mallsyskon och deras XHTML-namespace

En lyckad helersättnings-import med exData.loadXML levererar sin faktiska importerade body i stället för att slå ihop föråldrat mallinnehåll tillbaka in i rubriken

Kommentarer och processinstruktioner förblir i den ursprungliga sparade XDP:n men utelämnas från renderingskopian, så deras payloads blir aldrig synlig rubriktext

Renderingskopian är begränsad till 4096 noder, djup 64, 65536 överarbetssteg och 1 MiB debiterad käll- och serialiserad XHTML; den nativa avkodaren och appearance-byggarna behåller sina egna kör-, glyph- och bytegränser

Verkliga typsnittsvarianter och stilar

Leverera CaptionFontFamilies med faktiska program för regular, bold, italic och bold-italic samt namngivna familjer

Den befintliga nativa XHTML-avkodaren löser inline-stilar, styckesgränser, familjelistor, färger, storlekar samt under- och genomstrykningsformatering; skalär rubriks teckensnittsstorlek, vikt, lutning, typsnitt och fyllnadsfärg ger standardstilen

En saknad begärd variant eller glyph misslyckar förberedelsen; denna konsument hittar inte på fet eller kursiv appearance och letar inte upp externa teckensnitt

Mätning och placering

Rubrikmätning och målning använder samma nativa rich-layout och levererade teckensnittsprogram, inklusive faktiska glyphframsteg, stilspecifik stig och sjunk, gemensamma radbaslinjer och radbrytning

En fast reservering vänster eller höger begränsar textbredden; en positiv reservering topp eller botten tillåter radbrytning inom tillgänglig fältbredd

En utelämnad reservering, noll eller schemastandardvärdet -1 använder rubrikens naturliga utsträckning utan automatisk radbrytning; explicita styckesgränser förblir radbrytningar, och text som överskrider en fast fältrektangel beskärs

Automatiska rubriker vänster och höger använder sin naturliga bredd; inline-rubriker ignorerar explicit reservering under både mätning och placering

Rubrikmarginaler minskar den faktiska textregionen, och rubrikens horisontella och vertikala justering styr den resulterande appearanceplaceringen

Reserveringsbeteendet följer XFA 3.3:s definition av caption-reserve

Naturlig höjd omfattar den sista radens teckensnittsmått samt den nativa tvepoängspaddningen på var sida; den utesluter oanvänd avslutande leading efter sista raden

Dolda och inaktiva rubriker förbrukar ingen region; osynliga rubriker reserverar sin uppmätta region utan att måla eller debitera rubrikglyphs

En faktisk rubrik-Form delas av tillstånden off, on och neutral i samma widget; upprepade instanser behåller oberoende innehålls- och stilgrafer

Styckemarginal och CSS med egen radhöjd, rubrikbilder och andra icke-textbaserade rubrikpayloads, rich-rubriker för tryckknappar samt senare interaktiv ombyggnad av appearance är separat konsumentarbete

Transaktioner och godkännande

En lyckad nativ egenskapshändelse kan sparas och läsas om före automatisk PDF-skapning; skriptfel återställer exakta nativa XML-bytes, och misslyckanden med förberedelsebudget eller avbrott bevarar målets bytes, längd och position

Skrivningar till målet börjar först efter att hela kandidaten lyckats; ett fel från anroparens egen strömskrivning följer den strömmens semantik och kan inte rullas tillbaka för ett godtyckligt icke-sökbart mål

Tests/Linux/XFAHeadlessRichCaptionTests.pas producerar faktiska PDF:er med stylade, radbrutna, familjevalda och osynliga rubriker; XFAHeadlessRichCaptionRuntimeTests.pas täcker upprepade överbryggningar, hel XML-ersättning och rollback

XFAHeadlessRichCaptionBudgetTests.pas övar verkliga resursfel och utvalda avbrottsgränser, medan HeadlessTextExtentTests.pas exponerar de uppmätta nativa radutsträckningarna

Verify-XFAHeadlessRichCaptions.py granskar sparade PDF-grafer, exakta bytes från levererade teckensnittsprogram, delade referenser, Unicode-text, råa textmatriser, fontTools-mått och MuPDF-renderade pixlar utan att öppna ett läsargränssnitt

Skrivskyddad TextHeight · Boolean-callback-metadata · Boolean-markörer och tillstånd