Metadata compression
Metadata compressionとは、PDFドキュメント内のメタデータストリームに圧縮アルゴリズムを適用し、重要なドキュメント情報を保持しながらファイルサイズを削減する技術を指します。
Metadata compressionとは、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メタデータは通常、XMLベースのXMP(Extensible Metadata Platform)ストリームとして保存されており、標準的なPDF圧縮方式を使用して圧縮することができます。この最適化は、特に大量のメタデータを含むドキュメントにおいて重要です。圧縮されていないメタデータは、全体のファイルサイズを大幅に増加させる可能性があるためです。
Metadata compressionは、PDFドキュメント内のメタデータストリームに圧縮フィルタを適用するプロセスです。PDFメタデータには2つの形式が存在します。1つは従来のドキュメント情報辞書(Title、Author、Keywordsなどの基本フィールドを含む)、もう1つはより包括的なXMPメタデータストリームです。ドキュメント情報辞書がシンプルなキー・バリューペアを保存するのに対し、XMPメタデータはXML形式のデータで構成されており、冗長で反復的になりやすいため、圧縮の理想的な対象となります。
圧縮は標準的なPDFストリーム圧縮フィルタを使用して適用され、最も一般的なのはFlate(deflate)圧縮で、これはZIPファイルで使用されているのと同じアルゴリズムです。レンダリングパフォーマンスとのバランスを考慮する必要があるドキュメントコンテンツの圧縮とは異なり、メタデータ圧縮は主にストレージ効率に焦点を当てています。これは、メタデータが通常、頻繁にアクセスされることはなく、段階的ではなく全体としてアクセスされるためです。
PDF生成や操作を行う開発者にとって、metadata compressionは以下のような実用的なメリットを提供します。第一に、情報の損失なくファイルサイズを削減できることです。これは、ダウンロード時間や帯域幅コストが重要となるWebアプリケーションにおいて極めて重要です。詳細な権利管理情報、広範な編集履歴、 ( 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仕様の標準機能であるためです。つまり、開発者は異なるPDFビューアやプロセッサ間での互換性の問題を心配することなく、metadata compressionを実装できます。第三に、数百万のPDFが保存されるエンタープライズ環境では、metadata compressionによる累積的なストレージ節約効果は相当なものになります。
Metadata compressionは、メタデータストリームがPDFファイルに書き込まれる前に圧縮フィルタを適用することで機能します。PDFを作成または変更する際、プロセスは以下のステップに従います。
- メタデータのシリアライゼーション: メタデータ(通常はXMP XML)がまずバイトストリームにシリアライズされます
- フィルタの適用: 圧縮フィルタ(通常はFlateDecode)がバイトストリームに適用されます
- ストリームのエンコーディング: 圧縮されたデータが、適切なフィルタパラメータとともに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 ) では複数のフィルタを連鎖させることが可能ですが、メタデータには単一段階のFlate圧縮が最も一般的です。PDFリーダーやプロセッサが圧縮されたメタデータに遭遇すると、ストリームのフィルタパラメータを読み取り、対応する解凍アルゴリズムを適用し、元のメタデータXMLを再構築します。
Metadata compressionを実装する開発者にとって、ほとんどのPDFライブラリは自動圧縮オプションを提供しています。ただし、より低レベルで作業する場合、開発者はストリーム辞書が圧縮フィルタを正しく指定していること、および長さの値が元のデータサイズではなく圧縮後のデータサイズを反映していることを確認する必要があります。
- XMP Metadata – XML形式を使用してPDFドキュメントにリッチなメタデータを埋め込むためのExtensible Metadata Platform標準
- Stream Compression – コンテンツストリームや画像を含む、PDF内の任意のストリームオブジェクトを圧縮する一般的な技術
- Document Information Dictionary – タイトルや著者などの基本的なドキュメントプロパティを含む、PDFのレガシーメタデータ構造
- FlateDecode Filter – PDFで最も一般的に使用される圧縮アルゴリズムで、deflate/inflate圧縮方式に基づいています
- Metadata Stream – ドキュメントメタデータを含む特定のPDFストリームオブジェクトで、通常はXMP形式です
- (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
