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

PDF object byte offset

PDFオブジェクトバイトオフセットは、ファイル内のPDFオブジェクトの正確な位置を示す数値であり、ファイルの先頭からバイト単位で測定されます。

カテゴリ: General PDF Concepts
キーワード: pdf object byte offset, PDF object byte offset

概要

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リーダーが文書処理中に特定のオブジェクトを迅速に検索および取得するために使用するポインタとして機能します。

定義

PDFオブジェクトバイトオフセットは、PDFファイルの先頭から特定の間接オブジェクトの開始位置までの距離をバイト単位で表す整数値です。PDF内の各間接オブジェクトには、ファイルストリーム内での位置を識別する固有のバイトオフセットがあります。これらのオフセットは、クロスリファレンス(xref)テーブルまたはクロスリファレンスストリームに記録され、オブジェクト番号とそれに対応するファイル位置のマッピングを維持します。相対位置指定システムとは異なり、バイトオフセットはファイルの先頭のバイト位置ゼロからの絶対アドレス指定を提供するため、文書構造内のどこから参照されても一貫性が保たれます。

重要性

PDFオブジェクトバイトオフセットの理解は、PDF操作、修復、または作成ツールを扱う開発者にとって不可欠です。PDFを読み取る際、パーサーはこれらのオフセットを使用してファイル全体をスキャンすることなく必要なオブジェクトに直接ジャンプでき、大きな文書のパフォーマンスを大幅に向上させます。増分更新の場合、バイトオフセットにより、元のオブジェクト位置を保持しながら既存のPDFに新しいコンテンツを追加できます。PDFバリデーターまたは修復ツールを構築する開発者は、破損を検出するためにオフセットの精度を検証する必要があり、PDFジェネレーターを実装する開発者は、クロスリファレンステーブルに正確なオフセットを計算して記録する必要があります。不正確なバイトオフセットはPDFを読み取り不能にしたり、オブジェクトにアクセスできなくなる可能性があるため、オフセットの精度はPDF準拠にとって重要です。

仕組み

PDFオブジェクトバイトオフセットは、文書内のすべての間接オブジェクトをインデックス化するクロスリファレンステーブルメカニズムの一部として機能します。PDFファイルが作成されると、各間接オブジェクトが順次書き込まれ、その開始バイト位置が記録されます。通常ファイルの末尾近くに配置されるクロスリファレンステーブルには、各オブジェクト番号とそのバイトオフセットをペアにしたエントリが含まれています。PDFリーダーが文書を開くと、まずクロスリファレンステーブルを読み取ってオブジェクト位置マップを構築します。特定のオブジェクトにアクセスするには、リーダーはそのオブジェクト番号を使用して対応するバイトオフセットを検索し、そのファイル位置にシークしてオブジェクトデータを読み取ります。増分更新では、新しいオブジェクトが新しいバイトオフセットでファイルに追加され、追加のクロスリファレンスセクションがこれらの位置を記録します。最近のPDFでは従来のテーブルの代わりにクロスリファレンスストリームを使用する場合がありますが、バイトオフセットの原理は同じです—ファイル構造内の各オブジェクトを検索するための直接的な数値アドレスを提供します。

関連用語

  • Cross-reference table(クロスリファレンステーブル) – PDFファイル内のオブジェクト番号とそのバイトオフセットをマッピングするインデックス構造
  • Indirect object(間接オブジェクト) – 他のオブジェクトから参照でき、記録されたバイトオフセットを持つ番号付きPDFオブジェクト
  • Incremental update(増分更新) – ファイル全体を書き直すことなく、変更と新しいクロスリファレンスデータを追加してPDFを変更する方法
  • PDF file structure(PDFファイル構造) – ヘッダー、ボディ、クロスリファレンステーブル、トレーラーを含むPDF文書の構成
  • Object stream(オブジェクトストリーム) – ファイルサイズを最適化する複数のオブジェクトの圧縮されたコンテナだが、従来のバイトオフセットアドレス指定に影響する

出典

(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