Native XFA fraværende property-oprettelse

Unit: HPDFXFAEventScript, integreret gennem HPDFXFARuntime og HPDFXFA

Event-adgang

JavaScript formularnoder udstiller getElement(className, occurrence=0); en fraværende understøttet property oprettes med skemastandarder, og gentagen adgang returnerer samme live property-handle

Direkte property-adgang som field.font eller draw.para opretter occurrence nul, når det understøttede barn er fraværende

const label = xfa.form.resolveNode("main.row[1].label");
const font = label.getElement("font", 0);
font.typeface = "Helvetica";
font.size = "18pt";
font.fill.color.value = "0,128,255";
label.para.hAlign = "right";
label.border.getElement("edge", 3).thickness = "0.25pt";

Occurrence-argumentet skal være et ikke-negativt heltal inden for skema-kardinaliteten; at anmode edge[3] opretter de foregående manglende edge-occurrences, hver med egne skemastandarder

Understøttede oprettelsesstier

Parent-klasseUnderstøttede børn og maksimal occurrences
fieldassist, bind, border, calculate, caption, desc, extras, font, format, keep, margin, para, traversal, ui, validate og value: én hver; items: to
drawassist, border, caption, desc, extras, font, keep, margin, para, traversal, ui og value: én hver
uiextras og picture: én hver; ét gensidigt udelukkende widget-valg som beskrevet i UI Property Overrides
passwordEdit, choiceList og checkButtonborder, extras og margin: én hver
fontextras og fill: én hver
parahyphenation: én
borderedge og corner: fire hver; extras, fill og margin: én hver
captionextras, font, margin, para og value: én hver
marginextras: én
fillcolor og extras: én hver; linear, pattern, radial, solid og stipple: ét gensidigt udelukkende barn
textEditborder, comb, extras og margin: én hver
edge og cornercolor og extras: én hver

Ikke-listede barneklasser returnerer null fra getElement; ugyldige occurrences og modstridende fill-valgbørn fikser event-transaktionen

Oprettelse af metadata-containere afvikler ikke nyligt gemte scripts; event-, calculate- og validate-adfærd følger den eksisterende runtime-afviklingsmodel

Native persistens og identitet

Oprettelse og efterfølgende skrivninger publicerer rigtige native formularpakke-noder under den valgte gentagne occurrence; skabelonen og andre occurrences beholder deres originale værdier

Det næste event genbygger formular-kun property-bindinger fra den gemte native formularpakke, så både direkte adgang og SOM-opløsning iagttager den oprettede hierarki

Tilbageholdte script-object-referencer fortsætter med at adressere den native property efter succesfulde transaktioner og instance-indsættelse; at skrive en reference efter dens instance er fjernet fejler og gendanner transaktionen

Kloning af en gentaget prototype kloner også dens formular-kun property-struktur med skemastandarder for nye property-attributter snarere end en anden occurrences overrides

Motorfejl og native mutationsfejl gendanner native bytes, property-noder, datasets, script-tilstand og instance-rækkefølge; oprettelse deler node-, operations-, dybde-, byte- og værdibudgetter

Effektive consumers og gemt PDF-output

Felt- og rich draw-consumers læser oprettede font-, fill/color-, afsnits- og border/edge-properties under faktisk layout og flattening; efterfølgende events og gemte XDP-genindlæsninger bevarer disse værdier

Med THotPDF.AutoFormAppearances=True genererer XFA-tekstfelter deres native appearance efter den effektive style er anvendt, inklusive understøttede standardfont-familier, punktstørrelse, tekstfarve, justering samt solid kantfarve og -bredde

AutoFormAppearances forbliver en eksplicit dokumentoption; dens default False fortsætter med at stole på reader appearance-generering

Oprettelses- og formateringsconsumer-dækning er separat: yderligere value-barnklasser og widget-skemaer, generelle skemaklasser, property-fjernelse/-reparentering, rigere widgettekst og Unicode appearance-indlejring forbliver aktive implementeringsmål

Relaterede API'er

Native XFA Property DOM, XFA Property Schema Defaults, TXFAEventAction og TXFAEventBinding