property JavaScriptActionCount: Integer; // read only
Liefert die Anzahl der auf Dokumentebene deklarierten JavaScript-Aktionen —
typischerweise Einträge unter dem /Names /JavaScript-Name-Tree des Katalogs
(PDF 1.7 spec section 12.6.4.16) plus die dokumentweiten OpenAction-,
DA-, WC-, WS-, DS-, WP-,
DP-Einträge, wenn ihre Action-Dictionarys einen JS-Stream tragen
Feld- und Annotationsebene-Skripte zählen nicht mit; die leben in den
Annotations- bzw. AcroForm-Feld-Dictionarys
Der Wert ist 0, wenn das Dokument nicht lädt, wenn Active
False ist oder wenn das PDF schlicht keine dokumentweiten Skripte enthält. Über
JavaScriptAction[Index] holen Sie einen einzelnen Eintrag als
TPdfJavaScriptAction-Record (Name + Script-Quelle), mit
JavaScriptActions materialisieren Sie das ganze Array in einem Aufruf
Das Lesen dieser Eigenschaft ist billig — PDFium durchläuft nur den Name-Tree, ohne irgendein Skript auszuführen. PDFium Delphi Component wertet JavaScript nicht aus; die zurückgegebenen Zeichenketten sind reine Inspektionsdaten, nützlich für Forensik, das Entfernen von Skripten vor der Weitergabe oder das Ausgeben einer “Dokument enthält JavaScript”- Warnung an den Nutzer
JavaScriptActions, wenn nur ein Zähler oder ein einzelner Eintrag gebraucht wirdName-Einträge sind gültig — PDF erlaubt unbenannte Action-
dictionarys (etwa OpenAction). Verlassen Sie sich auch nicht darauf, dass Name eindeutig ist
// Warn the user if the PDF carries embedded JavaScript.
if Pdf1.JavaScriptActionCount > 0 then
if MessageDlg('This document contains JavaScript. Open anyway?',
mtWarning, [mbYes, mbNo], 0) = mrNo then
Pdf1.Active := False;