Image decoding
Image decodingとは、PDFファイルに格納された圧縮画像データを、レンダリングまたは表示可能な形式に変換するプロセスです。
Image decodingとは、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 ) で規定されているさまざまな画像圧縮形式をサポートしており、これらの圧縮されたビットストリームを使用可能なピクセルデータに戻すためにdecodingが必要です。このプロセスは、PDFコンテンツを扱うPDFレンダリングエンジンや画像抽出ツールの基礎となります。
Image decodingとは、PDF内にエンコードされた画像データを、表示、処理、または抽出が可能な生のピクセル情報に変換する、解凍および変換のステップです。PDF文書では、画像は通常、DCTDecode(JPEG)、FlateDecode(PNG類似)、JBIG2Decode、JPXDecode(JPEG 2000)、または白黒画像用のCCITTFaxDecodeなどの圧縮アルゴリズムを使用して保存されます。PDF内の各画像オブジェクトには、元の画像データを再構築するために適用すべきdecodingアルゴリズムを指定するフィルタパラメータが含まれています。
Image decodingは画像レンダリングとは異なります。decodingはデータストリームの解凍のみに焦点を当てるのに対し、レンダリングには色空間変換、解像度スケーリング、他のページ要素との合成などの追加ステップが含まれます。また、画像抽出とも異なります。画像抽出はdecodingを含む場合がありますが、さらにPDF構造で定義された画像の座標変換マトリックスやクロッピングパラメータの処理が必要になります。
PDF処理ライブラリを扱う開発者にとって、image decodingを理解することはいくつかの実用的な理由から不可欠です。第一に、アプリケーションのパフォーマンスに直接影響します。非効率的なdecodingは、ページのレンダリングや大きな文書からの画像抽出の際にボトルネックを生み出す可能性があります。第二に、適切なdecoding実装により画像の忠実性が確保され、不適切なフィルタの適用やパラメータ処理から生じる視覚的なアーティファクトを防ぐことができます。
PDFビューア、変換ツール、またはコンテンツ抽出システムを構築する開発者は、遭遇するさまざまなPDF文書をサポートするために、複数のdecoding形式を正しく処理する必要があります。さらに、プログラムでPDFを作成する際には、適切なエンコードフィルタを選択することで、ファイルサイズと、それらのファイルを処理する下流アプリケーションのdecodingパフォーマンスの両方に影響を与えます。
PDFレンダリングエンジンが画像オブジェクトに遭遇すると、どのフィルタが適用されているかを判断するためにストリーム辞書を読み取ります。/Filterエントリは、順番に適用する必要がある1つ以上のdecodingアルゴリズムを指定します(フィルタは連鎖可能です)。次にエンジンは、
(
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内のJPEG画像はDCTDecodeフィルタを使用し、逆離散コサイン変換アルゴリズムを適用して画像を再構築します。デコードされたデータは生の色成分値になりますが、これらの値は依然として画像の指定された色空間(DeviceRGB、DeviceCMYK、ICCBasedなど)内に存在します。decoding後、レンダリングエンジンは追加の色空間変換を適用し、潜在的に画像マスク、ソフトマスク、または透明グループを処理する必要があります。
decodingパラメータは/DecodeParms辞書で指定される場合があり、FlateDecodeの予測関数やDCTDecodeの色変換パラメータなど、フィルタ固有の設定を提供します。開発者は、画像データを正しく再構築するためにこれらのパラメータを考慮する必要があります。また、エラー処理も重要です。破損したまたは非標準の画像ストリームはdecodingの失敗を引き起こす可能性があり、これらは適切に管理される必要があります。
- Image XObject – 文書内の画像データとその関連プロパティをカプセル化するPDF構造
- Filter – PDF内のストリームデータに適用される圧縮またはエンコードアルゴリズムで、対応するdecodingが必要
- Color space – デコードされた色値を解釈し、表示可能な色に変換するために使用される方法
- Stream object – decodingが必要な圧縮されている可能性のあるデータを含むPDFオブジェクトタイプ
- Content stream – 画像配置コマンドを含む、ページコンテンツを記述するオペレータとオペランドのシーケンス
- (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
