PDChoice
PDChoiceは、Apache PDFBox PDModel APIのJavaクラスで、リストボックスやコンボボックスなどのPDFフォームにおける選択フィールドを表します。
PDChoiceは、Apache PDFBox PDModel APIのJavaクラスで、リストボックスやコンボボックスなどのPDFフォームにおける選択フィールドを表します。選択フィールドは、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 ) で定義されているように、事前に定義された値のリストからユーザーが1つまたは複数のオプションを選択できるようにします。この高レベルクラスは、開発者が選択フィールドのプロパティ(利用可能なオプション、デフォルト選択、フィールドの動作など)をプログラムで読み取りおよび変更するための便利なメソッドを提供します。
PDChoiceは、Apache PDFBoxの高レベルPDModel APIの一部であり、選択可能なオプションをユーザーに提示するインタラクティブフォームフィールド(AcroForm)と連携するように特別に設計されています。このクラスはPDFieldクラス階層を拡張し、2つの具体的な実装の親クラスとして機能します:PDListBox(スクロール可能なリスト選択用)とPDComboBox(ドロップダウン選択用)です。自由形式の入力を受け付けるテキストフィールドとは異なり、PDChoiceフィールドはユーザー入力を事前に定義された値のセットに制限するため、PDFフォームにおける構造化データ収集に不可欠です。このクラスは、基礎となるPDFディクショナリ構造をカプセル化し、オプション配列、エクスポート値、複数選択機能、ソート動作などの選択フィールド属性を操作するための型安全なJavaメソッドを提供します。
PDFフォームを扱う開発者にとって、PDChoiceは、構造化データを確実に収集するアクセシブルでユーザーフレンドリーなドキュメントを作成するために重要です。選択フィールドは、ユーザー入力を有効なオプションに制限することでデータ品質を向上させ、エラーを削減し、下流のデータ処理を簡素化します。PDFフォーム自動化を実装する際、開発者はPDChoiceを使用して、ビジネスロジックに基づいてドロップダウンメニューやリストボックスを動的に設定したり、他のフィールドでのユーザー選択に基づいて利用可能なオプションを更新したり、選択された値を処理のために抽出したりします。選択フィールドの適切な実装は、PDFアクセシビリティ要件 ( Citation: N.A., 2014 (N.A.). (2014). Document management applications — Electronic document file format enhancement for accessibility — Part 1: Use of ISO 32000-1 (PDF/UA-1) . International Organization for Standardization Retrieved from https://www.iso.org/standard/64599.html ) にも貢献し、支援技術が障害を持つユーザーにオプションを正しく提示できるようにします。
PDChoiceは、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
)
で定義されている選択フィールドの主要なプロパティにアクセスおよび変更するためのメソッドを提供します。開発者はsetOptions()を使用して、単純な文字列配列として、または表示値とエクスポート値を分けた配列として、利用可能な選択肢のリストを定義できます。getValue()およびsetValue()メソッドは、現在選択されているオプションを取得および設定し、setMultiSelect()はユーザーが複数のアイテムを選択できるかどうかを決定します。追加のメソッドは、オプションをアルファベット順に並べるsetSort()や、選択が変更されたときに即座にフォーム送信をトリガーするsetCommitOnSelChange()などのフィールド動作を制御します。PDFを読み取る際、PDChoiceは基礎となるCos(Content Stream)ディクショナリオブジェクトを解析し、その値を直感的なJava APIメソッドを通じて公開します。書き込む際には、Javaオブジェクトを適切なPDFディクショナリ構造にシリアライズし、PDFフォーマットの複雑さを内部的に処理します。
- AcroForm – 選択フィールドを含むフォームフィールドを含む、PDFドキュメントのインタラクティブフォームアーキテクチャ
- PDField – Apache PDFBoxのPDModel APIにおけるすべてのインタラクティブフォームフィールドの親クラス
- PDListBox – スクロール可能なリスト選択フィールドを表すPDChoiceのサブクラス
- PDComboBox – ドロップダウン選択フィールドを表すPDChoiceのサブクラス
- Tagged PDF – アクセシビリティのためのセマンティック情報を含むPDF構造で、適切なフォームフィールドマークアップを含む ( Citation: PDF Association, 2023 PDF Association(2023). Retrieved from https://pdfa.org/resource/tagged-pdf-best-practice-guide-syntax/ )
- (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
- PDF Association (2023)
- PDF Association(2023). Retrieved from https://pdfa.org/resource/tagged-pdf-best-practice-guide-syntax/
- (N.A.) (2014)
- (N.A.). (2014). Document management applications — Electronic document file format enhancement for accessibility — Part 1: Use of ISO 32000-1 (PDF/UA-1) . International Organization for Standardization Retrieved from https://www.iso.org/standard/64599.html
