掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
単色のビットマップファイルを16色に変更するためには (ID:69439)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
面倒だから実際に動くか確認しないで回答する。 間違っているかもしれない。 構造体じゃなくて*(int *)(buff+28)とか変なやり方するの? 28であっているかとか俺は調べないよ。 XmaxRangeとか意味分かんないし。 グローバル変数にしなけれないけないようなものではないのに グローバル変数を大量に使っていて こんなプログラム作るならいなくなってくれないかって言いたいレベル。 1ピクセル1ビットだったのが1ピクセル4ビットになるので ビットマップのバイト数も変わるはず。 ビットマップは横1行が4バイトの倍数になるように右に0〜3バイトの余分を追加する。 >パレット部を16色追加すると、ファイル作成すらできません。 意味わからん。 fwriteがエラーになるの? むろん、その分buffのバイトサイズが増えているよね。 > buff[54]=0x00; /* 0:黒 */ こういうのは buff[sizeof(BITMAPFILEHEADER)+〜]= こういう感じにした方がいい。
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.