PDF object tree
PDFオブジェクトツリーは、PDFドキュメントの内部構造を階層的に表現したもので、すべてのオブジェクトとその関係をナビゲート可能な形式で表示します。
PDFオブジェクトツリーは、PDFドキュメントの内部構造を階層的に表現したもので、すべてのオブジェクトとその関係をナビゲート可能な形式で表示します。このビューは、 ( Citation: N.A., 2020 (N.A.). (2020). 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ファイル形式の線形バイト構造とは異なり、オブジェクトツリーはオブジェクトを論理的な関係で提示し、ドキュメントカタログがページツリーに接続され、さらに個々のページに接続され、それらが順にコンテンツストリーム、リソース、その他のオブジェクトを参照する様子を示します。このツリー構造は、 ( Citation: N.A., 2020 (N.A.). (2020). Document management — Portable document format — Part 2: PDF 2.0 . International Organization for Standardization Retrieved from https://www.iso.org/standard/75839.html ) で説明されている間接オブジェクト参照システムを反映しており、オブジェクトはオブジェクト番号と世代番号を通じて相互に参照できます。オブジェクトツリーは、ドキュメントアウトライン(目次)やTagged PDFで使用される論理構造ツリーとは異なります。それらはユーザー向けのコンテンツ構成を表現するのに対し、オブジェクトツリーは開発者向けの技術的なファイル構造を表現します。
PDF生成、操作、または分析を行う開発者にとって、オブジェクトツリーは、そうでなければ不透明なバイナリ形式である内容への重要な可視性を提供します。これにより、不正な形式のドキュメントのトラブルシューティングが可能になり、必要なオブジェクトの欠落、不正なオブジェクト参照、レンダリング問題を引き起こす構造的な問題を明らかにできます。 ( Citation: N.A., 2014 (N.A.). (2014). 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トレーラーで参照されるルートオブジェクト)から始まり、これがドキュメント内の他のすべてのオブジェクトへのエントリーポイントとして機能します。このルートから、ツリーはオブジェクト参照に従って分岐します。カタログは通常、Pagesオブジェクト(ページツリーのルート)を参照し、それが個々のPageオブジェクトを参照し、各ページはコンテンツストリーム、フォント、画像、その他のリソースを参照します。辞書オブジェクトはキーと値のペアを子として持つノードとして表示され、配列は順序付きリストとして表示され、ストリームはその辞書プロパティとバイナリデータの存在の両方を示し、アトミック値(文字列、数値、ブール値、名前)はリーフノードとして表示されます。ほとんどのPDF開発ツールとライブラリは、開発者がこの構造を対話的にナビゲートし、特定の関心領域を探索するためにブランチを展開および折りたたむことができるオブジェクトツリービューアを提供しています。ツリー表現は、 ( Citation: N.A., 2020 (N.A.). (2020). Document management — Portable document format — Part 2: PDF 2.0 . International Organization for Standardization Retrieved from https://www.iso.org/standard/75839.html ) で指定された間接オブジェクト参照システムを尊重し、多くの場合、オブジェクトコンテンツと共にオブジェクト番号と世代番号を表示します。
- Document catalog(ドキュメントカタログ) – PDFドキュメントのルートオブジェクトで、オブジェクトツリーの開始点として機能する
- Indirect object(間接オブジェクト) – 他のオブジェクトから参照可能な番号付きPDFオブジェクトで、オブジェクトツリーのノードを形成する
- Structure tree(構造ツリー) – アクセシビリティ目的でTagged PDF内のコンテンツ要素を階層的に整理したもの
- Page tree(ページツリー) – PDFドキュメントのページを整理するオブジェクトツリーの特定のブランチ
- Object stream(オブジェクトストリーム) – 複数のPDFオブジェクトを格納する圧縮コンテナで、ツリービューでのオブジェクトの表示方法に影響を与える可能性がある
- (N.A.) (2020)
- (N.A.). (2020). Document management — Portable document format — Part 2: PDF 2.0 . International Organization for Standardization Retrieved from https://www.iso.org/standard/75839.html
- (N.A.) (2014)
- (N.A.). (2014). 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
