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

PDF stream incremental update

PDF stream incremental updateとは、PDF文書全体を書き換えるのではなく、ファイルの末尾に変更内容を追加することでPDFファイルを修正できる仕組みを指します。

キーワード: pdf stream incremental update, PDF stream incremental update

概要

PDF stream incremental updateとは、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 ) の基本となるもので、元のコンテンツを保持し下位互換性を維持しながら、効率的にPDF文書を更新することを可能にします。PDFの実際のコンテンツデータを含むstreamオブジェクトは、ファイル全体を再生成することなく、このincremental update処理を通じて修正できます。

定義

PDF stream incremental updateは、streamオブジェクト(ページ記述、画像、フォントなどのコンテンツを含む圧縮されたバイト列)への変更を、既存のPDFファイルの末尾に新しいエントリとして書き込むファイル修正技術です。元のstreamデータをその場で修正するのではなく、PDF構造は新しいcross-referenceセクションとtrailerを追加し、これらが更新された、または新しいstreamオブジェクトを参照する一方で、元のデータはそのまま残します。これにより階層的なファイル構造が作成され、各incremental updateセクションは文書の履歴的なリビジョンを表します。PDFリーダーはこれらのセクションを順次処理し、後の更新が同じオブジェクトの以前のバージョンを上書きします。これには、更新されたページコンテンツ、注釈、フォームデータを含む可能性のあるstreamオブジェクトも含まれます。

重要性

PDF操作ライブラリや文書管理システムを扱う開発者にとって、stream incremental updateの理解は以下の理由から重要です。第一に、潜在的に大きなファイルを書き換えるパフォーマンスオーバーヘッドなしに効率的な文書編集が可能になります。これは特に複数の文書を処理するサーバーサイドアプリケーションにとって重要です。第二に、incremental updateは文書の署名済み部分を変更しないため、デジタル署名を保持し、すでに署名されたPDFに追加の署名やフォームデータを追加できます。第三に、このメカニズムは文書の改訂履歴の追跡をサポートし、アンドゥ機能を可能にします。各incremental updateレイヤーが個別の変更を表すためです。最後に、PDF/UA ( 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を扱う際、incremental updateにより、文書構造全体を再生成することなく、タグ付きコンテンツstreamを追加または修正できます。

仕組み

streamのincremental update処理は、 ( 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 ) で定義された特定の技術的ワークフローに従います。streamオブジェクトを修正する必要がある場合、PDFライターは既存ファイルの末尾に3つの重要な要素を追加します:(1) 完全なdictionaryと圧縮データを含む新しいまたは修正されたstreamオブジェクト、(2) オブジェクト番号をファイル内の新しいバイトオフセットにマッピングする新しいcross-referenceセクション、(3) 前のtrailerを参照し、更新のリンクチェーンを作成する新しいtrailer dictionary。cross-referenceセクションは、オブジェクトカタログ全体ではなく、この更新で新規または修正されたオブジェクトのみをリストします。PDFリーダーがファイルを開くと、末尾から開始してtrailerチェーンを逆方向に読み取り、後のエントリが前のエントリを上書きする完全なオブジェクトマップを構築します。streamオブジェクトに関して具体的には、ページコンテンツを含むstream 15が更新される場合、そのstreamデータを含むオブジェクト15の新しいバージョンが末尾に書き込まれ、cross-referenceテーブルはリーダーを元の位置ではなくこの新しい位置に誘導します。この階層的アプローチにより、ファイルサイズは更新ごとに増加しますが、開発者は「線形化」や「名前を付けて保存」によって更新レイヤーを削除し、streamを統合することでファイルを最適化できます。

関連用語

  • Cross-reference table – PDFにおいて、オブジェクト番号をファイル内のバイト位置にマッピングするインデックス構造で、増分変更ごとに更新されます
  • PDFオブジェクト – PDF内の基本的なデータ構造で、圧縮されたコンテンツデータを含むstreamオブジェクトを含みます
  • Linearized PDF – より高速なWeb表示のためにincremental updateレイヤーを削除した最適化されたPDFファイル構造
  • デジタル署名 – incremental updateを利用して、以前の署名を無効化することなく署名を追加する暗号化検証メカニズム
  • Tagged PDF – 文書のアクセシビリティ機能を定義する構造マークアップをstreamオブジェクトに格納したPDF ( Citation: , (). Retrieved from https://pdfa.org/resource/tagged-pdf-best-practice-guide-syntax/ )

出典

(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