property JavaScriptActions: TPdfJavaScriptActions; // read only
JavaScriptActions materialisiert jede dokumentweite JavaScript-Aktion in ein
dynamisches Array von TPdfJavaScriptAction-Records. Jeder Record trägt den
Namen der Aktion (typischerweise der Entry-Key im /Names /JavaScript-Name-Tree
des Katalogs, etwa OpenAction,
App.calc) und die als WString dekodierte Script-Quelle. Die
Array-Länge entspricht JavaScriptActionCount
Das Ergebnis ist leer, wenn Active False ist oder wenn das PDF
keine dokumentweiten Skripte enthält. JavaScriptActions ist bequemer als die Schleife über
JavaScriptAction[Index], wenn Sie jeden Eintrag brauchen — eine Allokation,
ein Parse, fertig zum Gruppieren oder Filtern. Bei sehr großen Skriptsammlungen lieber
den indizierten Accessor verwenden, um nicht jeden Script-Körper vorab zu materialisieren
PDFium Delphi Component stellt Skripte nur als Inspektionsdaten bereit — sie werden nicht ausgeführt,
gesandboxt oder umgeformt. Verwenden Sie das Array, um eine “enthält JavaScript”-
Warnung auszugeben, um Skripte vor der Weitergabe zu entfernen (kombinierbar mit einem Low-Level-
FPDFDoc_*-Mutationsschritt) oder um einen externen Analyzer zu füttern. Feld- und
Annotationsebene-Skripte leben woanders und gehören nicht zu diesem Array
OpenAction)Length(Result) = 0 als schneller “kein JS”-Check verwenden,
ohne den Zähler separat zu berechnen
var Scripts: TPdfJavaScriptActions;
var I: Integer;
Scripts := Pdf1.JavaScriptActions;
for I := 0 to High(Scripts) do
Memo1.Lines.Add(Format('[%s] %s',
[Scripts[I].Name, Scripts[I].Script]));