色数が150色程度に限定された画像を描画して256色のBMPファイルを作りたいと思っています。(最終的にはGIFを作りたい)確か以前Win98時代には
☆パレットモードをZオーダーにする
☆指定の色で作ったBMP/GIFファイルを一度読み込ませる(パレット設定)
☆パソコンの画面設定を256色にする
☆指定した色で描画
☆BMPで保存
ということでファイルサイズをフルカラーBMPの約1/3にしたと記憶しています。(これをバッチ処理できるソフトでGIF化)
しかし現在のパソコン(XP)では256色に設定できないようなので困りました。フルカラーでつくったものをGIF化すると指定色が再現できません。
VB6(SP6)をXPで使っています。解決法などよろしくお願いします。
☆パソコンの画面設定を256色にする
は関係ありません。
XPでフルカラーの状態であろうとも、
256色のカラー画像は作成可能です。
http://kone.vis.ne.jp/program/#sample21
KONEさんのところを出すのならば、12番のサンプルも参考にすると良いでしょう。
# そういえば、ここ数年、offでKONEさんに会ってない...
やじゅ様、K.J.K様、助かりました。 コピペだけで実装できました。
今まではBMPファイルというものをソフトに依存して作成するものと考えていましたがこのようにパレットなどを具体的にバイナリで書き出すということを知り勉強になりました。
12番サンプル(DIBセクション?)も拝見させていただきましたが良く分かりませんでしたがどうやらBMPのパレットに関連しているようなので今後勉強します。
いま実装したPCでバリバリと256BMPを書き出しています。古いPCを探すこともなくほんとうに助かりました。