JavaのPDFファイルにJavaScriptを追加する

PDFは、異種プラットフォーム間で一貫したレイアウトがあるため、広く使用されているドキュメント形式の1つです。さらに、デスクトップベースのソフトウェアアプリケーションとWebブラウザで同時に表示できます。 Webブラウザーのサポートにより、PDFファイルでJavaScriptを実行できるようになります。この記事では、JavaでプログラムによってPDFファイルのJavaScriptを追加または削除する方法を学習します。

PDFでJavaScriptを追加または削除するJavaAPI-無料ダウンロード

Aspose.PDF for Javaは、PDFの生成と操作のためのさまざまな機能を提供する素晴らしいAPIです。このAPIを使用すると、新しいPDFファイルをシームレスに作成し、既存のPDFファイルを操作できます。このAPIを使用して、PDFファイルのJavaScriptを追加および削除します。 APIをダウンロードするか、次のMaven構成を使用してインストールできます。

リポジトリ:

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>https://repository.aspose.com/repo/</url>
</repository>

依存:

<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-pdf</artifactId>
    <version>22.4</version>
</dependency>

JavaのPDFファイルにJavaScriptを追加する

PDFファイルはAcrobatJavaScriptをサポートします。これは、以前はECMAScriptと呼ばれていたISO-16262のJavaScriptバージョン1.5のコアに基づいています。これは、NetscapeCommunicationsによって開発されたオブジェクト指向のスクリプト言語です。 PDFファイルにJavaScriptを追加する前に、AcrobatJavaScriptとWebブラウザーで使用されるHTMLJavaScriptの違いを見てみましょう。

  • Acrobat JavaScriptは、HTMLページ内のオブジェクトにアクセスできません。同様に、HTMLJavaScriptはPDFファイル内のオブジェクトにアクセスできません。
  • HTML JavaScriptは、Windowなどのオブジェクトを操作できます。ただし、Acrobat JavaScriptはこれらの特定のオブジェクトにアクセスできませんが、PDF固有のオブジェクトを操作することはできます。

以下は、JavaScriptをPDFファイルに追加する手順です。

  • Documentクラスを使用してPDFファイルをロードします。
  • JavascriptActionクラスのインスタンスを作成し、目的のスクリプトで初期化します。
  • ドキュメントレベルのJavaScriptのDocument.setOpenAction()メソッドにJavascriptActionオブジェクトを割り当てます。
  • ページレベルのJavaScriptを追加するには、setOnClose()メソッドとsetOnOpen()メソッドを使用します。
  • Document.save(String)メソッドを使用してPDFを保存します。

次のコードサンプルは、JavaScriptをPDFファイルに追加する方法を示しています。

// PDFファイルをロードする
Document doc = new Document("input.pdf");

// 目的のJavaScriptステートメントを使用してJavascriptActionをインスタンス化します
JavascriptAction javaScript = new JavascriptAction("this.print({bUI:true,bSilent:false,bShrinkToFit:true});");

// JavascriptActionオブジェクトをドキュメントの目的のアクションに割り当てます
doc.setOpenAction(javaScript);

// ページレベルでのJavaScriptの追加
doc.getPages().get_Item(1).getActions().setOnOpen(new JavascriptAction("app.alert('page 1 opened')"));
doc.getPages().get_Item(1).getActions().setOnClose(new JavascriptAction("app.alert('page 1 closed')"));

// PDFドキュメントを保存
doc.save("output.pdf");

JavaPDFでドキュメントレベルのJavaScriptを追加

Document.getJavaScript().setItem()メソッドを使用して、JavaScriptをドキュメントレベルに追加することもできます。以下は、JavaのドキュメントレベルにJavaScriptを追加する手順です。

次のコードサンプルは、JavaでJSスクリプトをPDFファイルに追加する方法を示しています。

// PDFファイルをロードする
Document doc = new Document("input.pdf");

// ドキュメントレベルのJavaScriptを追加する
doc.getJavaScript().set_Item("func1", "function func1() { hello(); }");
doc.getJavaScript().set_Item("func2", "function func1() { hello(); }");

// PDFドキュメントを保存
doc.save("output.pdf");

JavaはPDFファイルからJavaScriptを削除します

以下は、JavaでPDFファイルからJavaScriptを削除する手順です。

次のコードサンプルは、JavaでPDFファイルからJavaScriptを削除する方法を示しています。

// PDFファイルをロードする
Document doc = new Document("input.pdf");

// キーを使用してJavaScriptを削除する
doc.getJavaScript().remove("func1");

// PDFドキュメントを保存
doc.save("output.pdf");

PDFでJavaScriptを追加/削除するJavaAPI-無料ライセンスを取得

評価の制限なしにAspose.PDFforJavaを使用するには、無料の一時ライセンスを取得できます。

結論

この記事では、JavaでJavaScriptをPDFファイルに追加する方法を学びました。さらに、プログラムでPDFファイルからJavaScriptを削除する方法を見てきました。さらに、ドキュメントを使用してJavaPDFAPIの詳細を調べることができます。ご不明な点やご質問がございましたら、フォーラムからお問い合わせください。

関連項目