Skip to main content
Interwork Corporation
IDR Solutions Product Support Portal
PDF開発用語集 モードの切替 ダーク/ライト/自動 モードの切替 ダーク/ライト/自動 モードの切替 ダーク/ライト/自動

PDContentStream

PDContentStreamは、Apache PDFBoxライブラリのPDModel APIに含まれる高レベルなJavaクラスであり、開発者がPDF文書構造をプログラムから読み取り、変更するためのアクセスを提供します。

キーワード: pdcontentstream, PDContentStream

概要

PDContentStreamは、Apache PDFBoxライブラリのPDModel APIに含まれる高レベルなJavaクラスであり、開発者がPDF文書構造をプログラムから読み取り、変更するためのアクセスを提供します。PDModelレイヤーの一部として、PDF仕様 ( Citation: N.A., (N.A.). (). 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., (N.A.). (). 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標準への準拠を保証します。

重要性

JavaアプリケーションでPDF文書を扱う開発者にとって、PDContentStreamはPDF操作タスクの複雑さを大幅に軽減します。PDFオペレーターを手動で構築したり、低レベルのストリーム構文を管理したりする代わりに、開発者は簡単なJavaメソッドを使用して、テキストの追加、図形の描画、画像の挿入、ページコンテンツの変更などの一般的な操作を実行できます。この抽象化レイヤーにより、検証に失敗したり、PDFビューアで正しくレンダリングされない不正なPDFファイルを作成するリスクが最小限に抑えられます。 ( Citation: N.A., (N.A.). (). 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文書を扱う際、PDContentStreamはコンテンツが適切にタグ付けされ、構造化されることを保証するための基盤を提供します。このクラスはまた、リソースディクショナリの管理を自動的に処理し、フォント、画像、その他のリソースがPDFファイル内で適切に登録され、参照されることを保証します。

仕組み

PDContentStreamは、PDFコンテンツストリームオペレーターの内部バッファを維持し、ストリームが閉じられたときにPDFファイルに書き込むことで動作します。開発者がPDContentStreamインスタンスのメソッドを呼び出すと、このクラスはこれらの高レベル操作を ( Citation: N.A., (N.A.). (). Document management — Portable document format — Part 2: PDF 2.0 International Organization for Standardization Retrieved from https://www.iso.org/standard/75839.html ) で定義された適切なPDFオペレーターとオペランドに変換します。例えば、テキストを描画するメソッド呼び出しは、フォントパラメータの設定、テキストの配置、グリフのレンダリングに必要なオペレーターを自動的に生成します。このクラスはグラフィックス状態スタックを管理し、座標変換、色設定、クリッピングパスなどの操作が適切に維持され、復元されることを保証します。PDContentStreamはまた、ページのリソースディクショナリと連携し、フォント、画像、その他の外部リソースが使用される際に自動的にそれらへの参照を追加します。構造化されたコンテンツを扱う場合、このクラスはタグ付けAPIと組み合わせて使用することができ、 ( Citation: , (). Retrieved from https://pdfa.org/resource/tagged-pdf-best-practice-guide-syntax/ ) で概説されているアクセシビリティ要件を満たす適切に構造化された文書を作成できます。コンテンツストリームは正しい順序と構文で操作を書き込み、座標系の変換を処理し、すべての必要なオペレーターがバランスしていることを保証します(例えば、すべての状態保存操作に対応する状態復元操作があることを保証します)。

関連用語

  • PDDocument – PDFBox内でPDF文書全体を表すメインコンテナクラス
  • PDPage – コンテンツストリームを含むPDF文書内の単一ページを表す
  • PDResources – コンテンツストリームによって参照されるフォント、画像、その他のアセットを含むリソースディクショナリを管理する
  • Content Stream Operators – ページ上でコンテンツがどのようにレンダリングされるかを定義する低レベルのPDFコマンド
  • Tagged PDF – アクセシビリティのための文書コンテンツに関するセマンティック情報を含む構造化されたPDFフォーマット

出典

(N.A.) (2020)
(N.A.). (). 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)
(). Retrieved from https://pdfa.org/resource/tagged-pdf-best-practice-guide-syntax/
(N.A.) (2014)
(N.A.). (). 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