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

PDF stream navigation

PDFストリームナビゲーションとは、PDFドキュメントのコンテンツストリームの異なる部分をプログラムで横断しアクセスするために使用される技術と仕組みを指します。

カテゴリ: General PDF Concepts
キーワード: pdf stream navigation, PDF stream navigation

概要

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ストリームナビゲーションとは、PDFファイル構造内のさまざまなコンテンツストリームをプログラムで移動し、アクセスするプロセスです。ページ全体を移動する単純なページレベルのナビゲーションとは異なり、ストリームナビゲーションはより低いレベルで動作し、各ページに表示される内容を定義する実際のエンコードされたデータを扱います。PDFファイルのコンテンツストリームには、テキスト、グラフィック、画像のレンダリング方法を記述するオペレータとオペランドが含まれています。ストリームナビゲーションには、これらのストリームの解析、PDF構文の解釈、ストリームデータ内の特定のコンテンツ要素の特定が含まれます。これは論理構造ナビゲーション(ブックマークやTagged PDF構造ツリーを通じたナビゲーションなど)とは異なり、 ( Citation: , (). Retrieved from https://pdfa.org/resource/tagged-pdf-best-practice-guide-syntax/ ) で定義されている高レベルの組織構造ではなく、生のコンテンツエンコーディングを直接扱うためです。

重要性

PDFを扱う開発者にとって、ストリームナビゲーションはいくつかの重要なタスクに不可欠です。第一に、コンテンツ抽出を可能にします。つまり、インデックス作成、変換、データマイニングの目的でPDFドキュメントからテキスト、グラフィック、画像を読み取ることができます。第二に、コンテンツの修正に必要であり、開発者がドキュメント全体を再作成することなく既存の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ストリームナビゲーションには、通常いくつかの技術的なステップが含まれます。まず、開発者はカタログ辞書から始まり、コンテンツストリームを参照するページオブジェクトへと横断する、ドキュメントのオブジェクト階層を解析することで、PDFファイル構造内のストリームを見つける必要があります。各コンテンツストリームは、後置記法で記述されたオペレータとオペランドのシーケンスを含むPDFオブジェクト(通常は圧縮されている)です。これらのストリームをナビゲートするために、開発者はストリームデータをデコードし(圧縮用のFlateDecodeなどのフィルタを処理)、Tj(テキストの表示)、cm(変換行列の変更)、Do(外部オブジェクトの呼び出し)などのPDFオペレータを認識するトークナイザーを使用してコンテンツを解析します。ナビゲーションには、オペレータがこれらの状態を変更する際に、現在の変換行列、テキスト状態パラメータ、色空間を追跡するためのグラフィック状態スタックの維持が含まれる場合があります。構造化されたドキュメントの場合、開発者はで説明されているように、ストリームナビゲーションと構造ツリーナビゲーションを組み合わせて、コンテンツストリーム要素を論理構造要素にマッピングすることがよくあります。最新のPDFライブラリは、この複雑さの一部を抽象化するAPIを提供し、コンテンツストリームを反復処理し、位置情報を含むテキストランを抽出し、グラフィックオブジェクトを識別するメソッドを提供しています。

関連用語

  • Content stream(コンテンツストリーム) – ページコンテンツの外観を定義するPDF内の実際のエンコードされたデータ
  • PDFオペレータ – テキストレンダリング、グラフィック描画、状態変更を制御するコンテンツストリーム内のコマンド
  • Tagged PDF structure(Tagged PDF構造) – PDFコンテンツに論理構造とアクセシビリティ情報を提供する階層的な組織レイヤー
  • Graphics state(グラフィック状態) – コンテンツストリームオペレータが要素をレンダリングする方法に影響を与えるパラメータ(色、線幅、変換行列)の集合
  • Stream filter(ストリームフィルタ) – ファイルサイズを削減するためにPDFストリームに適用される圧縮およびエンコード方法(FlateDecodeなど)

出典

(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