PDContentStreamは、Apache PDFBoxライブラリのPDModel APIに含まれる高レベルなJavaクラスであり、開発者がPDF文書構造をプログラムから読み取り、変更するためのアクセスを提供します。PDModelレイヤーの一部として、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
)
で定義された複雑な低レベル操作を、ページ、リソース、注釈、フォーム、その他のPDF要素を扱うための開発者フレンドリーなメソッドに抽象化します。このクラスは、PDFBoxベースのアプリケーションにおけるコンテンツ操作タスクの主要なインターフェースとして機能します。
PDContentStreamは、Apache PDFBox内の抽象クラスであり、PDFコンテンツをレンダリングするために使用されるコンテンツオペレーターとオペランドのストリームを表現します。このクラスは、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
)
で定義されたPostScript風の構文で記述されたオペレーターとオペランドで構成されていますが、PDContentStreamはこれらの操作を直感的なJavaメソッドでラップします。このクラスは、データを抽出または分析するための既存のコンテンツストリームの読み取りと、PDF文書を作成または変更するための新しいコンテンツストリームの書き込みの両方をサポートします。直接的なストリーム操作とは異なり、PDContentStreamは適切なPDF構文を維持し、リソース管理を処理し、PDF標準への準拠を保証します。
PDCryptFilterDictionaryは、Apache PDFBoxの高レベルAPIクラスで、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
)
に従って、PDFの異なる部分がどのように暗号化されるかを定義する暗号化フィルター仕様を読み取り、変更するためのメソッドを提供します。暗号フィルターにより、異なるコンテンツストリームや文字列オブジェクトを異なるセキュリティハンドラやアルゴリズムを使用して暗号化できる柔軟な暗号化スキームが可能になります。
PDCryptFilterDictionaryは、Apache PDFBox PDModel APIのJavaクラスで、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
)
で定義されている暗号フィルター辞書構造をカプセル化します。暗号フィルター辞書は、PDFコンテンツストリームや文字列を暗号化または復号化するために使用されるアルゴリズム、鍵長、その他のパラメータを指定します。文書全体のセキュリティ設定を定義する広範な暗号化辞書とは異なり、暗号フィルター辞書は特定のコンテンツタイプに適用される暗号化方式に特化しています。PDCryptFilterDictionaryクラスは、暗号化フィルター方式(CFM)、暗号化鍵の長さ、埋め込みファイルストリームにフィルターが適用されるかどうかなどのプロパティに対するgetterおよびsetterメソッドを提供します。このクラスは通常、PDFセキュリティ機能をプログラム的に扱う際にPDEncryptionクラスを通じてアクセスされます。
PDDefaultAttributeObjectは、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
)
で定義されているアクセシビリティと文書の論理構造にとって不可欠です。
PDDefaultAttributeObjectは、Apache PDFBox内の特定の実装クラスで、タグ付きPDFのコンテンツに対するデフォルトのフォーマットと構造プロパティを指定するために使用されるPDF属性オブジェクトを処理します。個々の構造要素に適用されるインライン属性とは異なり、デフォルト属性オブジェクトは複数の構造要素に継承可能なプロパティを定義することで、PDF構造ツリー内の冗長性を削減します。このクラスはPDFBoxの属性オブジェクト階層を拡張し、
(
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
)
で指定されているように、支援技術やPDFプロセッサが文書コンテンツを解釈する方法を制御する属性ディクショナリへのアクセスと操作のためのメソッドを提供します。
PDDestinationは、Apache PDFBoxの高レベルPDModel APIに含まれるクラスで、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
)
に従ってズームレベル、位置、表示パラメータも指定します。このクラスを使用することで、開発者はPDFビューアが特定の文書位置にナビゲートし表示する方法を制御するデスティネーションオブジェクトを、プログラムで読み取り、作成、変更できます。
PDDestinationは、Apache PDFBoxにおける抽象基底クラスで、文書ページの特定のビューを定義する構造である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
)
では、デスティネーションはページ参照と、ページをどのように表示するかを決定するフィットタイプ(ウィンドウ幅に合わせる、特定のズームレベルで表示する、特定の座標に配置するなど)を組み合わせたものです。
PDDestinationNameTreeNodeは、Apache PDFBox PDModel APIのクラスで、名前付き宛先を管理するための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
)
で定義されているように、直接的なページ参照ではなく、人間が読める名前を使用してPDFドキュメント内の特定の場所を参照する方法を提供します。このクラスにより、開発者はPDFファイル内でこれらの名前付き宛先を整理する階層ツリー構造を、プログラムで読み取り、作成、変更することができます。
PDDestinationNameTreeNodeは、PDFが名前付き宛先を保存および整理するために使用する名前ツリーデータ構造を実装する高レベルのJavaクラスです。PDFアーキテクチャにおいて、名前ツリーは文字列キー(宛先名)を対応する宛先オブジェクトにマッピングする平衡木構造です。単純な辞書とは異なり、名前ツリーは大量の名前付きエントリを扱う際の効率的な保存と検索のために最適化されています。
このクラスは、宛先のターゲット自体ではなく、組織構造に焦点を当てることで、直接的な宛先オブジェクト(PDPageDestinationなど)とは異なります。宛先オブジェクトはドキュメント内のどこに移動するかを定義しますが、PDDestinationNameTreeNodeはテキスト文字列をそれらの宛先オブジェクトに関連付けるルックアップメカニズムを管理します。このクラスは、ツリーを走査し、新しい名前-宛先ペアを追加し、名前で宛先を取得するためのメソッドを提供します。
名前付き宛先は、参照を特定のページ番号から切り離すため、保守性の高い、アクセシブルなPDFドキュメントを作成する上で重要です。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
)
で要求されるアクセシビリティ機能にとって特に重要です。支援技術がドキュメント構造をナビゲートするために安定した名前付き参照に依存する場合があるためです。
PDDestinationOrActionは、Apache PDFBoxの高レベルPDModel APIにおけるユーティリティクラスであり、PDF文書内の宛先(destination)またはアクション(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
)
で定義されているように、宛先とアクションはどちらもPDFのナビゲーション機構として機能し、宛先は文書内の目標位置を指定し、アクションは実行される動作を定義します。このクラスは、いずれかのタイプが有効なコンテキストにおいて、これらの関連性はあるものの異なるPDFオブジェクトをポリモーフィックに扱うことで、その取り扱いを簡素化します。
PDDestinationOrActionは、Apache PDFBoxライブラリにおける抽象基底クラスであり、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
)
で規定されているPDF仕様では、宛先はPDF文書の特定のビュー(特定のページとズーム設定など)を記述し、アクションは実行される操作(URIへのナビゲーションやアプリケーションの起動など)を記述します。このクラスが存在する理由は、リンク注釈、アウトライン項目、フォームフィールドアクションなどのいくつかのPDF構造が、宛先またはアクションのいずれかを相互に参照できるためです。開発者が型をチェックし、それぞれのケースを個別に処理することを要求するのではなく、PDDestinationOrActionはこの複雑さを抽象化する一貫性のあるプログラミングインターフェースを提供します。このクラスは、PDDestinationまたはPDActionオブジェクトのいずれかを保持できる親型として機能し、APIメソッドが単一のパラメータまたは戻り値を通じていずれかの型を受け入れたり返したりすることを可能にします。
PDDeviceCMYKは、Apache PDFBoxのPDModel APIに含まれるクラスで、CMYK(シアン、マゼンタ、イエロー、キー/ブラック)デバイスカラースペースを表します。このカラースペースは、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つであり、印刷向けPDF文書で一般的に使用されます。このクラスは、PDF文書内でCMYKカラー値をプログラム的に作成および操作するためのメソッドを提供します。
PDDeviceCMYKは、Apache PDFBoxのPDDeviceColorSpace抽象クラスの具象実装です。これは
(
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
)
で規定されているDeviceCMYKカラースペースを表し、シアン、マゼンタ、イエロー、ブラック(キー)の4つの成分を使用して色を定義します。各成分の値は0.0から1.0の範囲で、0.0はインクなし、1.0は最大インク適用量を表します。
PDDeviceColorSpaceは、Apache PDFBoxライブラリにおける高レベルJavaクラスで、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
)
で定義されているデバイス色空間は、色変換を行わずに出力デバイスの特性に直接対応するもので、DeviceGray、DeviceRGB、DeviceCMYKが含まれます。このPDModel APIクラスを使用することで、開発者はPDF構造を読み取ったり変更したりする際に、色空間プロパティにプログラムでアクセスし操作することができます。
PDDeviceColorSpaceは、Apache PDFBoxのPDModel APIレイヤーの一部であり、
(
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
)
で定義されたPDF仕様構造にマッピングされるオブジェクト指向Javaクラスを提供します。このクラスは特にデバイス色空間を扱います。デバイス色空間とは、絶対的な色空間にキャリブレーションされるのではなく、特定の出力デバイスの特性に依存する色モデルです。デバイス非依存色空間(CalRGB、CalGray、Lab、ICCベース)とは異なり、デバイス色空間はモニター、プリンター、イメージセッターなどの異なる出力デバイス間で色が変化する可能性があります。クラス階層には通常、3つの標準デバイス色空間(DeviceGray(グレースケール)、DeviceRGB(赤-緑-青)、DeviceCMYK(シアン-マゼンタ-イエロー-ブラック))のサブクラスまたは表現が含まれます。PDDeviceColorSpaceは、低レベルのPDF辞書と配列構造を抽象化し、色空間プロパティの問い合わせ、色成分数の取得、Javaアプリケーション環境内での色変換を実行するメソッドを提供します。
PDDeviceGrayは、Apache PDFBox PDModel APIのクラスで、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
)
で定義されているデバイス依存カラースペースの一つであるDeviceGrayカラースペースを表現します。このクラスは、PDF文書内でグレースケールカラーを扱うためのメソッドを提供します。色は0.0(黒)から1.0(白)までの単一コンポーネントで指定されます。グレースケールレンダリングを使用するPDFコンテンツの読み取り、作成、または変更を行う際に一般的に使用されます。
PDDeviceGrayは、Apache PDFBoxにおけるDeviceGrayカラースペース機能をカプセル化した高レベルのJavaクラスです。DeviceGrayカラースペースは、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
)
で定義されている3つのデバイス依存カラースペースの一つで、DeviceRGBおよびDeviceCMYKと並んで存在します。CalGrayやICCBasedカラースペースなどのデバイス非依存カラースペースとは異なり、DeviceGrayはカラーマネジメントを行わず、出力デバイスのネイティブなグレー値の解釈に依存します。
PDDeviceNは、Apache PDFBoxの高レベルPDModel APIに含まれるクラスで、PDF文書におけるDeviceNカラースペースを表現します。DeviceNは
(
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
)
で定義されている特殊なカラースペースで、個々の色材またはインキを正確に制御できるため、標準的なCMYKプロセスカラーを超えた特色、メタリック、またはカスタムインキの組み合わせを必要とする専門的な印刷ワークフローにおいて不可欠です。
PDDeviceNは、任意の数のカスタム色材を使用して色を指定できるPDF DeviceNカラースペースのJavaオブジェクト表現です。固定されたカラーチャンネルで動作するDeviceRGBやDeviceCMYKなどの単純なカラースペースとは異なり、DeviceNカラースペースは任意の数の名前付き色材(「PANTONE 185 C」などの特色や、ニスやメタリックなどの特殊インキなど)を定義できます。PDDeviceNクラスは、
(
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
)
で詳述されているPDF仕様が適切なDeviceN実装に要求する色材名、ティント変換関数、代替カラースペース定義にアクセスするためのメソッドを提供します。