PDFium Delphi Component Docs

JavaScriptActions Propriedade

Componente: TPdf  ·  Unidade: PDFium
Todas as ações JavaScript no nível do documento retornadas como um único vetor dinâmico

Syntax

property JavaScriptActions: TPdfJavaScriptActions; // somente leitura

Description

JavaScriptActions materializa todas as ações JavaScript de nível de documento em um único array dinâmico de registros TPdfJavaScriptAction. Cada registro carrega o nome da ação (tipicamente a chave de entrada na árvore de nomes /Names /JavaScript do catálogo, por exemplo OpenAction, App.calc) e o código-fonte do script decodificado como WString. O comprimento do array é igual a JavaScriptActionCount

O resultado fica vazio quando Active é False ou quando o PDF não contém scripts de nível de documento. JavaScriptActions é mais conveniente que percorrer JavaScriptAction[Index] em laço quando você precisa de todas as entradas — uma alocação, uma análise, pronto para agrupamento ou filtragem. Para coleções de scripts muito grandes, prefira o acessador indexado para evitar materializar o corpo de todos os scripts de imediato

O PDFium Delphi Component expõe os scripts apenas como dados de inspeção — não os executa, não os coloca em sandbox nem os transforma. Use o array para exibir um aviso de “contém JavaScript”, remover scripts antes da redistribuição (combine com uma passagem de mutação FPDFDoc_* de baixo nível) ou alimentar um analisador externo. Scripts de nível de campo e de anotação residem em outro lugar e não fazem parte deste array

Remarks

Example

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]));

See Also

JavaScriptAction, JavaScriptActionCount, Permissions