イネマルのプログラミング備忘録

趣味プログラマのメモ

ImageMagick で、画像を 4bit深度 bmp に変換する(減色)

メモ

Windows APILoadBitmap等、
何かしらのリソースとして4bit深度のビットマップイメージが使いたい時、
ImageMagick」と「ペイント(mspaint)」を使って作成する例。

ImageMagick の入手

ImageMagick - Download

今回は、Portable版を使う。(ImageMagick-7.0.10-59-portable-Q16-x64.zip)

変換方法

例では、ImageMagick をCドライブ直下に保存(解凍)。

コマンドは、下記の通り。

"C:\ImageMagick-7.0.10-59-portable-Q16-x64\convert" "変換元の画像パス" -depth 4 "保存先パス(拡張子.bmp)"

変換された bmp を右クリックして、
「プロパティ」「詳細」タブの「ビットの深さ」が4になっていることを確認して完了。

この時、「ビットの深さ」が4にならない場合は、
4bit深度 png を経由すると変換できる事がある。

"C:\ImageMagick-7.0.10-59-portable-Q16-x64\convert" "変換元の画像パス" -depth 4 "一時保存先パス(拡張子.png)"
"C:\ImageMagick-7.0.10-59-portable-Q16-x64\convert" "一時保存先パス(拡張子.png)" -depth 4 "4bit bmp 保存先パス"

Visual Studio のリソースエディタで読めるようにする

ImageMagick の変換だけでは、何故か Visual Studio のリソースエディタで、
「認識できないビットマップ形式です。」とエラー表示が出る。

これは、Windows標準の「ペイント」に読み込ませて、
「上書き保存」することで、解決する。

参考