PDFium Delphi Component Docs

JavaScriptActions プロパティ

コンポーネント: TPdf  ·  ユニット: PDFium
文書レベルの JavaScript action をすべて 1 つの dynamic array として返します

Syntax

property JavaScriptActions: TPdfJavaScriptActions; // read only

Description

JavaScriptActions は、ドキュメントレベルの JavaScript アクションをすべて、1 つの TPdfJavaScriptAction レコードの動的配列へ具体化します。各レコードはアクション名(通常はカタログの /Names /JavaScript name tree の entry キー。例: OpenAction、App.calc)と、WString にデコードされたスクリプトソースを持ちます。配列長は JavaScriptActionCount と一致します

Active が False のとき、PDF がドキュメントレベルのスクリプトを持たないときは、結果は空です。全 entry が必要なら、JavaScriptAction[Index] をループするより JavaScriptActions の方が楽です。1 回のアロケーション、1 回の解析で、グループ化やフィルタリングにそのまま使えます。巨大なスクリプト集合では、すべてのスクリプト本体を前もって具体化しないようインデックス付きアクセサーを推奨します

PDFium Delphi Component が公開するスクリプトは検査データだけです。実行もサンドボックス化も変換も行いません。この配列は「JavaScript を含む」警告を出す、再配布前にスクリプトを剥がす(低レベルの FPDFDoc_* 変更パスと組み合わせる)、外部アナライザーに渡す、といった用途に使います。フィールド・注釈レベルのスクリプトは別の場所にあり、この配列には入りません

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