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

PDF object API

PDF object APIは、PDF文書の基本構成要素であるPDFオブジェクトを操作するためのメソッドや関数を開発者に提供するプログラミングインターフェースです。

カテゴリ: General PDF Concepts
キーワード: pdf object api, PDF object API

概要

PDF object APIは、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 ) で定義されているように、PDF文書は辞書、配列、文字列、数値、ストリームなどの基本オブジェクト型から構築されています。PDF object APIは、これらの低レベル構造を抽象化し、開発者がPDF構文を手動で解析することなく、プログラムによってPDFコンテンツの作成、読み取り、修正、操作を可能にします。

定義

PDF object APIは、プログラミング言語のクラス、メソッド、データ構造を通じて、PDFの内部オブジェクト構造を公開するソフトウェア層です。ファイルの結合や分割などの文書レベルの操作に焦点を当てた高レベルのPDF操作ライブラリとは異なり、PDF object APIは ( 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オブジェクトの粒度レベルで動作します。これには、8つの基本オブジェクト型(ブール値、整数と実数、文字列、名前、配列、辞書、ストリーム、nullオブジェクト)への直接アクセスが含まれます。

このAPIは、PDFファイルを構成する相互接続されたオブジェクト構造である文書のオブジェクトグラフへの直接アクセスを提供することで、コンテンツストリームAPIやページレベルAPIとは異なります。開発者は、オブジェクト参照をトラバースし、オブジェクト番号によって間接オブジェクトにアクセスし、オブジェクト間の関係を検証または変更できます。このレベルの制御は、専門的な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構造の問題をデバッグする場合に不可欠です。

重要性

PDF文書を扱う開発者にとって、PDF object APIは、単純な文書操作を超えた高度な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 ) で概説されているアクセシビリティ機能を実装する際、開発者は構造要素、タグ辞書、属性オブジェクトを作成および操作する必要があり、これらのタスクには直接的なオブジェクトレベルのアクセスが必要です。同様に、 ( Citation: , (). Retrieved from https://pdfa.org/resource/tagged-pdf-best-practice-guide-syntax/ ) で説明されているTagged PDFを扱う際、論理構造ツリーを理解および操作するには、基本レベルでの辞書および配列オブジェクトとの対話が必要です。

この低レベルのアクセスにより、開発者はカスタムPDF機能の実装、破損した文書の修復、ファイル構造の最適化、標準準拠の確保が可能になります。大量のPDFを処理するエンタープライズアプリケーションでは、オブジェクトレベルのAPIにより、文書全体を再構築するオーバーヘッドなしに正確な修正が可能になり、パフォーマンスとリソース使用率の向上につながります。

仕組み

PDF object APIは通常、PDFのオブジェクト階層のルートとして機能する文書のオブジェクトカタログにアクセスするメソッドを提供します。開発者は、間接参照番号によってオブジェクトを取得したり、オブジェクト参照をたどって文書構造をナビゲートしたりできます。APIは、PDFのクロスリファレンステーブルやオブジェクトストリームの複雑さを処理し、オブジェクトアクセスのための簡素化されたインターフェースを提示します。

最も一般的なPDFオブジェクト型である辞書を扱う場合、APIはキーと値のアクセスメソッドを提供し、開発者がエントリの読み取り、追加、または変更を行えるようにします。実際のコンテンツデータ(画像、フォント、ページコンテンツ)を含むストリームオブジェクトの場合、APIは通常、ストリーム辞書とデコードされたストリームデータの両方にアクセスするメソッドを提供します。配列オブジェクトは、コレクションのようなインターフェースを通じて公開され、反復処理とインデックスアクセスが可能になります。

APIはオブジェクト参照を管理し、オブジェクトが変更または作成されたときに参照整合性を確保します。開発者が新しいオブジェクトを作成すると、APIはそれに一意のオブジェクト番号を割り当て、文書のクロスリファレンス構造に追加します。最新のPDF object APIは、増分更新も処理し、ファイル全体を書き換えるのではなく、既存の文書に変更を追加できるようにします。これは、構造変更によって無効になるデジタル署名された文書にとって重要な機能です。

関連用語

  • PDF dictionary(PDF辞書) – キーと値のペアの連想テーブルを表す基本的なPDFオブジェクト型
  • Cross-reference table(クロスリファレンステーブル) – オブジェクト番号をPDFファイル内のバイト位置にマッピングするインデックス構造
  • Indirect object(間接オブジェクト) – 文書内の複数の場所から参照できる番号付きPDFオブジェクト
  • Content stream(コンテンツストリーム) – ページコンテンツを記述するオペレータとオペランドのシーケンスを含むストリームオブジェクト
  • Document catalog(文書カタログ) – 文書トレーラーから参照される、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