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

PDThread

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

キーワード: pdthread, PDThread

概要

PDThreadは、Apache PDFBoxのPDModelパッケージに含まれる高レベルAPIクラスであり、開発者がPDF文書構造をプログラムから読み取り、変更するためのアクセスを提供します。PDModelレイヤーの一部として、 ( 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の基礎的なオブジェクト構造の複雑さを抽象化し、Javaの開発者が直感的なオブジェクト指向インターフェースを通じて、ページ、リソース、注釈、フォームなどのPDF要素を扱えるようにします。PDThreadは、PDFBoxアプリケーションにおけるほとんどのPDF操作タスクの主要なエントリーポイントとして機能します。

定義

PDThreadは、Apache PDFBoxライブラリ内でPDFファイルに対する文書レベルのインターフェースを表すJavaクラスです。このクラスは、PDF仕様のオブジェクトモデルを直接反映する下位レベルのCOS(Carousel Object Structure)レイヤーの上に位置するPDModel APIレイヤーに属しています。PDFのプリミティブオブジェクト(辞書、配列、ストリーム)を扱うCOSレイヤーとは異なり、PDThreadは高レベルのPDF構造にアクセスし操作するための、型付けされた開発者にとって使いやすいメソッドを提供します。

PDThreadは、生のPDFオブジェクトグラフをナビゲートする必要があるアプローチではなく、文書中心のモデルを提供する点で、他のPDF操作アプローチとは異なります。COSレイヤーでは複数のオブジェクト検索と型キャストが必要になる場合がありますが、PDThreadはこれらの操作を、 ( 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コンポーネントを表す強く型付けされたオブジェクトを返すメソッド内にカプセル化しています。

重要性

PDF文書を扱う開発者にとって、PDThreadは実装の複雑さを大幅に軽減し、開発時間を短縮します。PDFの内部構造に関する深い知識を必要とする代わりに、開発者はビジネスロジックに集中でき、PDThreadがPDFオブジェクトの関係、間接参照、構造要件の複雑さを処理します。

PDThreadは、アクセシビリティ機能を実装する際に特に重要です。 ( 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 ) に準拠した文書を作成するために必要な、文書の構造ツリーやタグ付きコンテンツへのアクセスを提供するためです。これにより、アクセシビリティ基準を満たす必要がある組織や、 ( Citation: , (). Retrieved from https://pdfa.org/resource/tagged-pdf-best-practice-guide-syntax/ ) で説明されているTagged PDFを扱う組織にとって不可欠となります。

また、このクラスは型安全なAPIを提供することで、PDFの辞書ベースのオブジェクトモデルを直接扱う際に発生する多くの一般的なミスを防ぎ、コード品質の維持とエラーの削減にも貢献します。

仕組み

PDThreadは、PDFBoxのCOSレイヤーに対するファサードとして動作し、PDF文書をメモリにロードし、さまざまな文書コンポーネントに対するアクセサメソッドを提供します。インスタンス化されると(通常はPDDocument.load()を通じて)、PDFファイル構造を解析し、相互参照を解決し、開発者が標準のJavaメソッドを使ってナビゲートできるオブジェクトグラフを作成します。

このクラスは文書カタログ(PDFのオブジェクト階層のルート)を保持し、主要な文書構造にアクセスするためのメソッドを提供します:

  • ページ:文書内のページを取得、追加、削除、または並べ替えるメソッド
  • リソース:文書全体で使用されるフォント、画像、その他のリソースへのアクセス
  • 注釈:コメント、リンク、インタラクティブ要素の読み取りと書き込み
  • フォーム:フォームデータの抽出または入力のためのAcroFormフィールドへのアクセス
  • メタデータ:文書情報辞書とXMPメタデータストリーム
  • 構造( 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 ) で定義されているTagged PDFコンテンツの構造ツリーへのアクセス

PDThreadのAPIを通じて変更が行われると、基礎となるCOSオブジェクトが適切に更新されます。保存時には、PDThreadはCOSレイヤーと連携して、変更されたオブジェクトグラフを有効なPDFファイル形式にシリアライズし、すべての相互参照と構造要件が維持されることを保証します。

関連用語

  • PDModel – PDThreadおよびPDF操作のための関連クラスを含むApache PDFBoxの高レベルAPIパッケージ
  • COS(Carousel Object Structure) – PDF仕様で定義されているPDFオブジェクトを直接表現するPDFBoxの低レベルレイヤー
  • PDPage – PDThreadを通じてアクセスされるPDF文書内の個別ページを表すPDModelクラス
  • AcroForm – PDFのインタラクティブフォーム技術で、PDThreadを通じてフォームフィールドの操作にアクセスできる
  • Tagged PDF – アクセシビリティのための構造マークアップを持つPDF文書で、PDThreadの構造ツリーメソッドを通じて操作される

出典

(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