THotPDF.RegisterDocumentJavaScript

THotPDF

 

AcroForm-understøttelse

Registrerer en navngiven JavaScript-funktion på dokumentniveau i kataloget/Names /JavaScriptnavnetræ (ISO 32000-1 §7.7.4.4 + §12.6.4.16); AcroForm-widget-handlinger, dokumentåbne-handlinger og andre JavaScript-brødtekster kan kalde den registrerede funktion efter navn via viserens JavaScript-motor (Adobe Acrobat, Foxit og andre kompatible visere)

 

Delphi-syntaks:

procedure RegisterDocumentJavaScript(const Name, Body: AnsiString);

 

Parametre

Nameer den unikke nøgle, under hvilken JS-kilden gemmes i navnetræet; der skelnes mellem store og små bogstaver pr. PDF 1.7 §7.9.6; tomName raises

Bodyer den rå JavaScript-kilde; HotPDF tolker eller validerer ikke JS'en – kalderen er ansvarlig for syntaktisk korrekthed; typiske kaldere sender en komplet funktionserklæring (function GreetUser() { app.alert("hello"); }). Empty Body raises

 

Beskrivelse

Hvert kald tilføjer et (nøgle, indirekte ordbog) par til kataloget/Names /JavaScriptnavnetræet vedEndDoctid; hver registreret Body bliver sin egen indirekte<< /S /JavaScript /JS (body) >>ordbog, klar til at blive refereret efter navn fra enhver anden handling eller JS-kontekst; nyttigt til deling af et bibliotek af validerings-, formaterings- eller beregningshjælpere på tværs af mange widgets uden at kopiere kilden i hver/A action

Registrering af den sammeNameto gange udløser en undtagelse, så kaldere ikke lydløst mister deres første definition

 

Overholdelsesporte

Udløser en undtagelse under enhver ikke-tomPDFAComplianceindstilling (ISO 19005-1 §6.6.1 / ISO 19005-2 §6.5.1 / ISO 19005-3 §6.5.1 forbyder alle JavaScript-handlinger på tværs af PDF/A-niveauer); udløser en undtagelse under enhver ikke-tomPDFXComplianceindstilling (ISO 15930 prepress-arbejdsgange afviser interaktiv scripting); opgraderer automatisk dokumentetVersiontil PDF 1.3 efter behov; afviser underStrictVersionLockhvis den valgte version er ældre end PDF 1.3

 

Eksempel

PDF := THotPDF.Create(nil);
PDF.FileName := 'form.pdf';
PDF.BeginDoc;
PDF.RegisterDocumentJavaScript('GreetUser',
'function GreetUser() { app.alert("Hello"); }');
PDF.RegisterDocumentJavaScript('ValidateNumber',
'function ValidateNumber(v) { if (isNaN(v)) app.alert("Not a number"); }');
// ... AcroForm-widget /A-handling kan derefter kalde: ValidateNumber(this.value);
PDF.EndDoc;

 

Availability

HotPDF v2.119.14. PDF 1.3+ funktion; HotPDF opgraderer automatisk dokumentets Version, medmindreStrictVersionLocker indstillet

 

Se også: AcroForm-understøttelse, THPDFActionScriptType