Action
PDFにおけるActionは、ユーザーインタラクションやドキュメントイベントに応じて実行される動作を定義する辞書オブジェクトです。
PDFにおけるActionは、ユーザーインタラクションやドキュメントイベントに応じて実行される動作を定義する辞書オブジェクトです ( Citation: N.A., 2020 (N.A.). (2020). Document management — Portable document format — Part 2: PDF 2.0 . International Organization for Standardization Retrieved from https://www.iso.org/standard/75839.html ) 。Actionにより、異なるページへのナビゲーション、JavaScriptコードの実行、WebURLの開封、アプリケーションの起動、フォームデータの送信などのインタラクティブ機能が実現されます。Actionは、ユーザー入力やドキュメントのライフサイクルイベントに応答する動的でインタラクティブなPDFドキュメントを作成するための基盤となる要素です。
ActionはPDFドキュメント内の構造化データオブジェクトで、実行可能な動作をカプセル化します。 ( Citation: N.A., 2020 (N.A.). (2020). Document management — Portable document format — Part 2: PDF 2.0 . International Organization for Standardization Retrieved from https://www.iso.org/standard/75839.html ) で定義されているように、Actionはアクションタイプと関連パラメータを指定するアクション辞書で構成されます。一般的なアクションタイプには以下が含まれます:
- GoTo アクション:ドキュメント内のDestinationへナビゲートする
- URI アクション:Webリンクを開く
- JavaScript アクション:スクリプトを実行する
- Launch アクション:外部ファイルやアプリケーションを開く
- SubmitForm アクション:フォームデータをサーバーに送信する
- ResetForm アクション:フォームフィールドをクリアする
- Named アクション:印刷などの標準的なビューア操作を実行する
Actionは、Annotationがページ上の可視要素であるのに対し、Actionは動作を定義するという点でAnnotationとは異なります。ただし、Actionはインタラクティブ性を提供するために、Annotation(リンクアノテーションやボタンウィジェットなど)と頻繁に関連付けられます。また、Actionはドキュメント内の位置を単に指定するDestinationとも異なり、ナビゲーション自体を含む完全な動作を定義します。
PDFドキュメントを扱う開発者にとって、Actionの理解はインタラクティブなユーザーエクスペリエンスを作成するために不可欠です。Actionにより、開発者は以下を実現できます:
- 入力を検証し、値を計算し、データをWebサービスに送信するフォームの構築
- ボタン、リンク、ブックマークを使用したナビゲーションシステムの作成
- JavaScript統合によるビジネスロジックの実装
- PDFとWebアプリケーション間のシームレスな統合の提供
- ドキュメントの開封、閉鎖、印刷イベントで動作をトリガーすることによるドキュメントワークフローの自動化
Actionがなければ、PDFはインタラクティブ機能を持たない静的なドキュメントになります。PDFをアプリケーションに統合するWeb開発者にとって、ActionはPDFコンテンツと外部システム間の橋渡しを提供します。PDFライブラリを扱うJava開発者は、PDFドキュメントからインタラクティブな動作をプログラム的に作成、変更、抽出するために、Action構造を理解する必要があります。
Actionはイベント・トリガーメカニズムを通じて動作します。各アクションは特定のトリガーに関連付けられており、トリガーには以下が含まれます:
- ユーザーインタラクション:AnnotationやForm Field上でのマウスクリック、ホバー、キーボード入力
- ドキュメントイベント:ドキュメントの開封、閉鎖、保存、印刷
- ページイベント:ページへの進入または退出
- フォームイベント:フィールドへの進入、退出、値の変更、フォーマット
トリガーが発生すると、PDFビューアは関連付けられたアクション辞書を実行します。アクション辞書には、アクションタイプを指定する必須の/S(サブタイプ)エントリと、そのタイプ固有の追加エントリが含まれます。たとえば、URIアクションには対象URLの文字列を含む/URIエントリが含まれます。
Actionは/Nextエントリを使用して連結できるため、単一のトリガーから複数のアクションを順次実行できます。これにより、フォームデータを検証し、合計を計算し、最後にサーバーに送信するといった複雑なワークフローを、1回のボタンクリックから実現できます。
PDF仕様 ( Citation: N.A., 2020 (N.A.). (2020). Document management — Portable document format — Part 2: PDF 2.0 . International Organization for Standardization Retrieved from https://www.iso.org/standard/75839.html ) では、特にJavaScriptアクションとLaunchアクションに関するセキュリティ上の考慮事項が定義されており、これらはビューアのセキュリティ設定に応じて制限されたり、ユーザーの許可が必要になる場合があります。開発者はインタラクティブなPDF機能を設計する際、これらの制限を考慮する必要があります。
- Annotation – PDFページ上の視覚的なマークアップ要素で、ユーザーインタラクションを通じてアクションをトリガーすることが多い
- Destination – GoToアクションがナビゲートするPDFドキュメント内の特定の位置
- Form Field – 検証、計算、送信のためにアクションを使用するインタラクティブな入力要素
- JavaScript – PDFアクション内で使用され、複雑なインタラクティブ動作を実装するスクリプト言語
- Trigger Event – アクションの実行を引き起こす特定のユーザーインタラクションまたはドキュメントイベント
- (N.A.) (2020)
- (N.A.). (2020). Document management — Portable document format — Part 2: PDF 2.0 . International Organization for Standardization Retrieved from https://www.iso.org/standard/75839.html
