Nativt skapande av frånvarande XFA-egenskaper

Enhet: HPDFXFAEventScript, integrerad via HPDFXFARuntime och HPDFXFA

Händelseåtkomst

JavaScript-formulärnoder exponerar getElement(className, occurrence=0); en frånvarande stödd egenskap skapas med schemastandardvärden, och upprepad åtkomst returnerar samma levande egenskapshandtag

Direkt egenskapsåtkomst, som field.font eller draw.para, skapar förekomst noll när det stödda barnet saknas

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";

Förekomstargumentet måste vara ett icke-negativt heltal inom schemats kardinalitet; att begära edge[3] skapar de föregående saknade edge-förekomsterna, var och en med egna schemastandardvärden

Stödda skapandevägar

FörälderklassStödda barn och högsta antal förekomster
fieldassist, bind, border, calculate, caption, desc, extras, font, format, keep, margin, para, traversal, ui, validate och value: en vardera; items: två
drawassist, border, caption, desc, extras, font, keep, margin, para, traversal, ui och value: en vardera
uiextras och picture: en vardera; ett ömsesidigt uteslutande widgetval enligt UI Property Overrides
passwordEdit, choiceList och checkButtonborder, extras och margin: en vardera
fontextras och fill: en vardera
parahyphenation: en
borderedge och corner: fyra vardera; extras, fill och margin: en vardera
captionextras, font, margin, para och value: en vardera
marginextras: en
fillcolor och extras: en vardera; linear, pattern, radial, solid och stipple: ett ömsesidigt uteslutande barn
textEditborder, comb, extras och margin: en vardera
edge och cornercolor och extras: en vardera

Icke listade barnklasser returnerar null från getElement; ogiltiga förekomster och motstridiga val av fill-barn misslyckar händelsetransaktionen

Skapande av metadatacontainers kör inte nyligen lagrade skript; beteendet för event, calculate och validate följer den befintliga körningsmodellen i runtimen

Nativ persistens och identitet

Skapande och efterföljande skrivningar publicerar faktiska noder i formulärpaketet under den valda upprepade förekomsten; mallen och övriga förekomster behåller sina ursprungliga värden

Nästa händelse bygger om formulärexklusiva egenskapsbindningar från det sparade nativa formulärpaketet, så både direkt åtkomst och SOM-upplösning ser den skapade hierarkin

Kvarhållna skriptobjektsreferenser fortsätter att adressera den nativa egenskapen efter lyckade transaktioner och instansinsättning; att skriva via en referens efter att dess instans tagits bort misslyckas och återställer transaktionen

Kloning av en upprepad prototyp klonar också dess formulärexklusiva egenskapsstruktur och använder schemastandardvärden för nya egenskapsattribut i stället för en annan förekomsts överskrivningar

Motorfel och nativa mutationsfel återställer nativa bytes, egenskapsnoder, datamängder, skripttillstånd och instansordning; skapandet delar budgetar för noder, operationer, djup, bytes och värden

Effektiva konsumenter och sparad PDF-utmatning

Fält- och rich draw-konsumenter läser skapade egenskaper för font, fill/color, stycke samt border/edge under faktisk layout och utplattning; efterföljande händelser och omlästningar av sparad XDP bevarar dessa värden

Med THotPDF.AutoFormAppearances=True genererar XFA-textfält sin nativa appearance efter att den effektiva stilen tillämpats, inklusive stödda standardteckensnittsfamiljer, punktstorlek, textfärg, justering samt solid kantfärg och -bredd

AutoFormAppearances förblir ett explicit dokumentalternativ; dess standardvärde False fortsätter att förlita sig på läsarens appearance-generering

Skapandets och formateringskonsumenternas täckning är separata: ytterligare värdebarnklasser och widget-, allmänna schemaklasser, egenskapsborttagning/omflyttning, rikare widgettext och Unicode-inbäddning av appearance är aktiva implementeringsmål

Relaterade API:er

Nativ XFA Property DOM, Standardvärden i XFA egenskapsschema, TXFAEventAction och TXFAEventBinding