Seite 1 von 1

HBPrintPDF / DebenuQuickPDF

Verfasst: Do, 16. Mai 2019 9:38
von ramses
Hallo

in einem PDF lässt sich auch JavaScript Code unterbringen der beim Ausfüllen der Tabelle z.b. Formatierungen oder Berechnungen erledigt.

Mit den Funktionen aus HBPrint lassen sich die Tabellen-Werte sehr einfach über den Feldtitel einfügen.

Gibt es eine Möglichkeit auch den Javascript-Code zu starten? Nicht nur einzufügen oder zu lesen sondern Ihn auch auszuführen?

Re: HBPrint / DebenuQuickPDF

Verfasst: Do, 16. Mai 2019 10:00
von brandelh
Ich habe das nie gemacht, grundsätzlich ja, wenn es eine Funktion in QuickPDF gibt, der diesen - zur Zeit der Erstellung - ausführt.
In einem Browser würde der ja erst bei der Anzeige ausgeführt und das wäre dann ja z.b. Acrobat Readers Job.

Re: HBPrint / DebenuQuickPDF

Verfasst: Do, 16. Mai 2019 10:14
von brandelh
So wie ich das in 13.2 sehe ...

Code: Alles auswählen

AddGlobalJavaScript(...)  Adds JavaScript to a global location in the document. For example, this allows functions to be defined which can then be called from JavaScript attached to events.

int DPLAddGlobalJavaScript(int InstanceID, wchar_t * PackageName, wchar_t * JavaScript);
also 
oPDF:AddGlobalJavaScript(cJavaScriptPackageName, cJavaScriptCode)

jetzt muss man das mit einem Event verknüpfen ...

Unter der Hilfe Rubrik "JavaScript" gibt es jede Menge Funktionen, die die Scripts den Buttons, Feldern, Laden und Speichern zuordnen.
Etwa:
DocJavaScriptAction(...) This function is used to add JavaScript to document events. This JavaScript will be executed when, for example, the document is closed or printed.
AddLinkToJavaScript(...) Adds a clickable hotspot rectangle to the selected page which links to a JavaScript action. Use the SetAnnotBorderColor function to change the color of the hotspot border.
FormFieldJavaScriptAction(...) Adds JavaScript to a form field for any of the possible action types.
...
Ich sehe kein JavaScript, das zur Erstellungszeit ausgeführt wird. Notfalls bei Denebu (Foxit) im Forum fragen, was du tuen willst. Meine Klasse leitet ja nur die Anfrage weiter, was QuickPDF kann kann man damit meist auch.
Einziges Problem ist, wenn eine DLL ihre Antwort per event an eine eigene Funktion senden will, dann muss man eine CALLBACK Funktion generieren, Pablo hat da beispiele und eine Routine die man mit C compilieren und linken muss.

Re: HBPrintPDF / DebenuQuickPDF

Verfasst: Do, 16. Mai 2019 13:42
von ramses
Hallo Hubert

Danke für den Tip.

Die QuickPDF kann wohl Javascript Code in ein PDF einfügen. Ausführen von im PDF enthaltenem Scrip-Code z.B. beim auf Befehl beim öffnen oder drucken ist im unterschied zu Adobe-Reader in der QuickPDF nicht möglich.

Ich baue nun die Formulare entsprechend um dass Sie ohne Scripte verwendet werden können.