一部のBMP構造はアルファ成分を記録できますが、すべてのBMPやアプリが透明度を同じように扱うわけではありません。変換後のヘッダーとアルファ値を確認し、複数の背景と実際の利用アプリで開き直してください。
PNG → BMP
元のPNGにある透明度を把握する
PNGは画素ごとのアルファだけでなく、インデックスカラーに対応した透明度も表現できます。最初に、元画像に完全透明、半透明、不透明の領域が本当に含まれているかを確認してください。市松模様のプレビューだけに頼らず、白と黒の背景に重ね、柔らかな影、髪の毛、丸い角、アンチエイリアスされた文字を観察します。不透明なPNGをBMPへ変換しても、有用な透明度が新しく生まれることはありません。
変換前に画素寸法、カラータイプ、ビット深度、関連する色情報を記録します。パレットPNGかトゥルーカラーPNGかによって変換経路が変わる場合があります。完全透明画素の下に残るRGB値は、合成方法によって輪郭の色に影響することもあります。厳しい細線と中間アルファの影を比較地点に選び、空の透明領域だけで合否を判断しないようにします。
- 完全透明と半透明を区別する
- 白と黒の背景で元画像を見る
- 寸法とカラータイプを記録する
不透明なPNGをBMPへ変換しても、背景が自動的に除去されるわけではありません。
BMPという拡張子だけで判断しない
BMPは一つの均一な画素形式ではなく、複数の情報ヘッダーと保存方式を含む系列です。MicrosoftのBITMAPV5HEADERは赤、緑、青に加えてアルファ成分のマスクを持てます。またWindows Imaging Componentの説明には、有効なアルファを含む特定の32ビットV5 BMPの扱いがあります。しかし、古いヘッダーや別の圧縮フィールドではアルファが存在しなかったり、4番目のバイトが未使用だったりします。
読み手側のデコーダーも同じくらい重要です。あるアプリは対応する32ビットBMPをBGRAとして読み、別のアプリはアルファを無視して全画素を不透明に表示することがあります。変換時に透明部分を白や黒へ合成してからBMPを書くツールもあります。拡張子、ファイル容量、32ビットという表示だけを証拠にせず、ヘッダー形式、圧縮フィールド、色マスク、画素値を調べてください。
- 情報ヘッダーの種類を確認する
- 32ビット表示だけを信用しない
- 受け取り側のデコーダーを検証する
アルファ保持と背景合成を分けて考える
変換ツールにアルファ保持、32ビット出力、背景色などの設定があるかを確認します。アルファ保持を選んだ場合は、結果のBMPに有効なアルファマスクと意味のある値が書かれたかを検査します。背景合成を選んだ場合、透明度が消えるのは不透明な結果を意図的に作ったためであり、必ずしも失敗ではありません。白、黒、または実際のデザイン色を選び、半透明の輪郭が自然に混ざるかを見ます。
設定名は標準化されておらず、同じ名称でもツールによって異なるBMP構造が出力されます。容量が増えたことはアルファ保持の証明にならず、変換画面の市松模様もダウンロードしたファイルの状態を保証しません。対象アプリがPNGを受け取れるなら、PNGを維持する方が単純で確実なことがあります。BMPは用途限定の派生物として扱い、既知の良好なアルファを持つPNGを残してください。
- アルファ保持と不透明化を区別する
- マスクと値を実ファイルで調べる
- 可能ならPNGのまま渡す
複数の背景とアプリで輪郭を試す
BMPを変換ツールのプレビューだけでなく、実際に受け取るアプリで開きます。白、黒、最終デザインの背景に重ね、明るい縁取り、黒い線、階段状の輪郭、消えた柔らかな影、細い部分の色かぶりを確認してください。元のPNGと同じ場所を100パーセント表示と拡大表示で比べます。完全透明の角だけを見ると、髪や光彩に必要な中間アルファの破損を見逃します。
次に対象アプリでBMPを保存し、その保存版を開き直して別のビューアーでも確認します。最初は透明に見えたファイルでも、編集アプリが古いBMPヘッダーで再保存するとアルファが失われることがあります。OSのプレビューと編集ソフト、制作アプリで結果が異なる場合は、最終工程の要件を優先します。大量処理の前に小さなサンプルを実際の受取人へ送る方法も有効です。
- 白と黒と最終背景を使う
- 中間アルファも確認する
- 再保存後に別のビューアーで開く
一連の互換性テストを承認する
細い半透明の輪郭と柔らかな影を持つPNGを代表サンプルにします。BMPへ変換したら、寸法、容量、ヘッダー、ビット数、マスク、確認できたアルファ範囲を記録してください。対象の工程で必要な読み込み、移動、サイズ変更、合成を実行し、保存または書き出した結果を再検査します。作成側と必要なすべての読み手が透明度の意味に合意して初めて、互換性を確認できたと言えます。
一括処理前には、不透明な写真、硬い輪郭のロゴ、柔らかなアルファを持つ図版を別々のテスト群として扱います。失敗したBMPをPNGへ戻して復元しようとせず、元のPNGから別のヘッダー、変換ツール、または背景合成方針でやり直します。承認したツールとアプリのバージョン、アルファを保持するか背景へ合成するか、必要な背景色を記録し、原本PNGを別に保管してください。
- 読み込みから再保存まで試す
- 透明度の異なるサンプルを使う
- 原本PNGと承認設定を保管する
BMPのアルファは、作成ソフトと必要なすべての読み取りソフトが同じ意味で扱って初めて維持されます。
要点まとめ
- PNGはアルファを表現できますが、BMPでの透明度はヘッダー、画素配置、マスク、デコーダーに左右されます。
- BITMAPV5HEADERにアルファマスクがあっても、すべての作成ソフトや表示ソフトが利用するとは限りません。
- 完全透明と半透明の部分を白、黒、最終背景の上で確認し、保存後にも別のアプリで開き直します。
- 透明度が必須なら元のPNGを保管し、対象アプリの一連の処理を検証したBMPだけを派生ファイルとして使います。
よくある質問
BMPは透明度に対応していますか?
一部のBMP構造はアルファを記述できますが、実際の対応はヘッダー、画素配置、マスク、作成ソフト、デコーダーによって異なります。
32ビットBMPには必ず使えるアルファがありますか?
いいえ。4番目のバイトが未使用または無視される場合があり、32ビットという表示だけでは有効なマスクと値を保証できません。
透明なPNGがBMPで黒くなるのはなぜですか?
変換ツールが黒へ合成した、互換性のないアルファを書いた、または表示アプリがアルファを無視した可能性があります。
BMPはどこで確認すべきですか?
実際の受け取りアプリで複数の背景に重ね、再保存後にも開き直し、さらに別のビューアーで確認してください。
透明度が重要な場合はどの形式が適切ですか?
対象が対応するならPNGを維持するのが簡単です。BMPが必須なら、代表ファイルで一連の工程を検証してください。