0023 bitmap最適化ソフト bmpopt

Category: Soft

最終更新日時:2005年10月21日

ソフトの機能紹介

bmpoptは、 Windows bitmap ファイル(BMPファイル)の容量およびエントロピー(圧縮後の容量)を減らすための機能を詰め込んだソフトです。 主な機能としては

などがありますが、 まだ未実装の部分あり。 これから追加していきます。

って、 ひさしぶりに見たら何だこのソースは。 ヘッダにずらずらと処理を書いているし、 ハンガリアンだし……。 まぁとりあえずはこのままでいいか。

ダウンロード

現在のバージョンは 0.4.3 Build401 です。 GUIは Ver1.5.1 です。

Ver0.4.3/Ver1.5.1ダウンロード(2005年10月21日更新/185kB)

アーカイブの中身:

ちなみにテスト用BMPファイルは、 「勝手に使っていい」と明記してあるサイト様から頂いてます。

使い方

スクリーンショット

「フォルダ選択」ボタンを押してフォルダを選択すると、 そのフォルダ内のBMPファイルがリストに並びます。

圧縮したいファイルを選択して「実行」ボタンを押すと、 選択したBMPファイルが圧縮されます。

圧縮率が良くない場合はそのままにしておきたいなら、 「圧縮データサイズがもとの○○%以下のときだけ出力する」の空欄に数値を入れて、 チェックボックスをONにすればOKです。

このソフトで圧縮できるファイル/できないファイル

このソフトは、 同じ値が連続しているときに、 「0x38 を 27個」みたいな形のデータに変換することで圧縮をしています。 なので、 同じ色が横に並んでいないとサイズは縮まりません。

例1:単純な画像 Datasize after compression : 8012

例2:複雑な実写画像 Datasize after compression : 26458

この2つの画像はどちらも 256x256,16色 の画像ですが、 bmpoptで圧縮すると、 ファイルサイズに大きな違いが現れます。 ちなみに、 どちらも PNG圧縮の2倍くらいのサイズとなっています。

いちおう下の画像も、 圧縮できているんですよね。 6kほど。

bitmapファイルフォーマット

自分用メモとしておいておきます。

+0+1+2+3+4+5+6+7+8+9+A+B+C+D+E+F
bfTypebfSizebfReservedbfOffBitsbiSize
-biWidthbiHeightbiPlanesbiBitCountbiCompression
-biSizeImagebiXPicPerMeterbiYPixPerMeterbiClrUsed
-biClrImportant