property JavaScriptActions: TPdfJavaScriptActions; // read only
JavaScriptActions materializuje każde działanie JavaScript na poziomie dokumentu do jednej tablicy dynamicznej rekordów TPdfJavaScriptAction Każdy rekord zawiera nazwę działania (zwykle klucz wpisu w drzewie nazw /Names /JavaScript katalogu, np. OpenAction, App.calc) oraz źródło skryptu zdekodowane jako WString Długość tablicy jest równa JavaScriptActionCount
Wynik jest pusty, gdy Active ma wartość False albo gdy PDF nie zawiera skryptów na poziomie dokumentu JavaScriptActions jest wygodniejsze niż iterowanie po JavaScriptAction[Index], gdy potrzebujesz każdego wpisu — jedno przydzielenie, jeden parse, gotowe do grupowania albo filtrowania W przypadku bardzo dużych kolekcji skryptów lepiej użyć indeksowanego dostępu, aby nie materializować z góry każdej treści skryptu
PDFiumPas udostępnia skrypty wyłącznie jako dane do inspekcji — nie wykonuje ich, nie uruchamia w piaskownicy ani ich nie przekształca Użyj tablicy, aby pokazać ostrzeżenie „zawiera JavaScript”, usunąć skrypty przed redystrybucją (w połączeniu z niskopoziomowym przebiegiem modyfikacji FPDFDoc_*) albo przekazać je zewnętrznemu analizatorowi Skrypty na poziomie pól i adnotacji znajdują się gdzie indziej i nie są częścią tej tablicy
OpenAction)Length(Result) = 0 jako szybkiego sprawdzenia „brak JS” bez osobnego liczenia
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]));