BMP
BMP(Bitmap)は、Microsoftによって開発された、Windowsシステム上でデジタル画像を保存するためのラスター画像ファイル形式です。
BMP(Bitmap)は、Microsoftによって開発された、Windowsシステム上でデジタル画像を保存するためのラスター画像ファイル形式です。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文書に埋め込むことができる画像形式の1つとしてBMPをサポートしていますが、一般的にファイルサイズが大きいため、JPEGやPNGのような形式ほど広く使用されていません。BMPファイルは、非圧縮または最小限の圧縮形式でピクセルデータを保存するため、処理は簡単ですが、配布には効率的ではありません。
BMPは、画像をピクセルのグリッドとして保存するラスターグラフィックス形式で、各ピクセルの色情報が明示的に定義されます。この形式は.bmpファイル拡張子を使用し、ファイルヘッダー、ビットマップ情報ヘッダー、オプションのカラーパレット、および実際のピクセルデータを含む構造に従います。ベクター形式とは異なり、BMP画像は解像度に依存し、拡大するとピクセル化することがあります。BMPは、他のラスター形式であるJPEG(非可逆圧縮を使用)やPNG(可逆圧縮を使用)とは異なり、通常、最小限の圧縮または圧縮なしでデータを保存するため、ファイルサイズは大きくなりますが、デコード要件は単純になります。
PDFを扱う開発者にとって、BMPを理解することが重要な理由は以下の通りです。
レガシー互換性: 多くのWindowsベースのシステムや古いアプリケーションはBMP画像を生成するため、アーカイブや配布の目的でPDF文書に埋め込む必要がある場合があります。
画像処理ワークフロー: BMPのシンプルな構造により、プログラムで操作しやすく、最終的なPDF生成前の画像処理中の中間形式として有用です。
ファイルサイズの考慮事項: BMP画像をPDFに埋め込む際、開発者はBMPの非圧縮性がPDFファイルサイズを大幅に増加させ、文書のパフォーマンスやダウンロード時間に影響を与える可能性があることを認識する必要があります。埋め込む前にBMPをより効率的な形式に変換することが推奨されます。
BMP画像がPDF文書に埋め込まれる際、PDFプロセッサはBMP構造をデコードし、ピクセルデータをPDFの画像表示システムに適した形式に変換する必要があります。BMPファイル構造は以下で構成されます。
- ファイルヘッダー: ファイルサイズやピクセルデータへのオフセットなどのメタデータを含む
- 情報ヘッダー: 画像の寸法、ビット深度、圧縮方法を指定
- カラーパレット(オプション): 1ピクセルあたり8ビット以下のインデックスカラー画像に使用
- ピクセル配列: 実際のビットマップデータで、通常は下から上へ行ごとに保存される
PDFプロセッサは、さまざまなビット深度(1ピクセルあたり1、4、8、16、24、または32ビット)のBMPを処理でき、最終的なPDFサイズを削減するために画像埋め込み時に追加の圧縮を適用することがあります。PDFライブラリを使用する開発者は、通常、BMP構造を手動で解析する必要はありません。ほとんどのライブラリが自動的に変換を処理しますが、形式を理解することで、画像品質やファイルサイズの肥大化に関する問題の診断に役立ちます。
- JPEG – PDFで写真によく使用される非可逆圧縮画像形式
- PNG – 透過性をサポートする可逆圧縮画像形式
- Image XObject – PDF文書内で外部画像を表現するために使用される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
