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

In-use entry

In-use entryは、PDFのクロスリファレンス(xref)テーブルにおける特定のタイプのエントリで、オブジェクト番号が文書内で現在アクティブであることを示し、ファイル内のバイトオフセット位置を提供します。

キーワード: in-use entry, In-use entry

概要

In-use entryは、PDFのクロスリファレンス(xref)テーブルにおける特定のタイプのエントリで、オブジェクト番号が文書内で現在アクティブであることを示し、ファイル内のバイトオフセット位置を提供します ( 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リーダーがファイル全体を順次読み込むことなく、任意のオブジェクトを迅速に特定して取得できるようにします。In-use entryは、削除されたか再利用可能なオブジェクト番号を示すfree entryとは区別されます。

定義

In-use entryは、PDFのクロスリファレンステーブル内のレコードで、3つの構成要素から成ります:オブジェクトがファイル内のどこから始まるかを示す10桁のバイトオフセット、そのオブジェクト番号が何回再利用されたかを追跡する5桁の世代番号、そしてエントリがin-useであることを示すキーワード「n」です ( 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 ) 。フォーマットは「0000000017 00000 n」のような厳密なパターンに従い、「0000000017」がバイトオフセット、「00000」が世代番号、「n」がin-useであることを示します。これは、「n」の代わりに「f」を使用し、利用可能なオブジェクト番号の連結リストを維持するfree entryとは異なります。In-use entryは従来のクロスリファレンステーブルにのみ現れますが、最新のPDFのcross-reference streamには、圧縮されたバイナリ形式で同等の情報が含まれています。

重要性

PDFファイルを扱う開発者にとって、in-use entryの理解は、PDFパーサー、バリデーター、または操作ツールを実装する上で不可欠です。これらのエントリにより、文書全体をメモリにロードすることなくPDFオブジェクトへの効率的なランダムアクセスが可能になり、これはWebアプリケーションやサーバーサイド処理で大きなPDFファイルを扱う際に重要です。注釈、フォームデータ、デジタル署名の追加などPDFへのインクリメンタル更新を実行する際、開発者はファイルの破損を避けるために、in-use entryと対応するオブジェクトとの関係を正しく維持する必要があります。In-use entry内のバイトオフセットが正しく計算されていない場合、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 ) 。次にリーダーは各in-use entryを順次処理し、オブジェクト番号をそのバイト位置にマッピングする内部インデックスを構築します。例えば、オブジェクト番号7のin-use entryが「0000012345 00000 n」と読み取られた場合、リーダーはオブジェクト7の世代0がファイルの先頭からバイトオフセット12345の位置から始まることを知ります。リーダーがオブジェクト7にアクセスする必要がある場合、ファイルをスキャンするのではなく、その位置に直接シークします。インクリメンタル更新中、新規または変更されたオブジェクトは、更新されたin-use entryを含む新しいクロスリファレンスセクションとともにファイルに追加されますが、変更されていないオブジェクトは以前のセクションから元のin-use entryを保持します。このメカニズムにより、ファイル全体を書き換えることなくPDFを変更でき、デジタル署名を保持し、効率的な文書コラボレーションワークフローを可能にします。

関連用語

  • Cross-reference table – オブジェクト番号をファイル位置にマッピングする、すべてのin-use entryとfree entryを含むデータ構造
  • Free entry – オブジェクト番号が削除されたか再利用可能であることを示すxrefエントリ
  • Byte offset – オブジェクトが配置されているファイルの先頭からのバイト単位の位置
  • Incremental update – ファイル全体を書き換えるのではなく、変更を追加することでPDFを変更する方法
  • Object number – 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