掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
単色のビットマップファイルを16色に変更するためには (ID:69438)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
■16色に変更するためにBITMAPFILEHEADERの構造のようなものを 変更してファイルを作ることが出来るのですが、開くことが出来ません。 ①*(int *)(buff+28)=1; /* biBitCount(1) */ → *(int *)(buff+28)=4; /* biCompression */ /* biSizelmage */ ②*(unsigned long *)(buff+30)=*(unsigned long *)(buff+34)=0L; →*(unsigned long *)(buff+30)=0L; *(unsigned long *)(buff+34)=(unsigned long)(XmaxRange+1L)*(unsigned long)(YmaxRange+1L); ③(long *)(buff+38)=*(long *)(buff+42)=0L; →*(long *)(buff+38)=(long)3780L; /* biXPixPerMeter */ *(long *)(buff+42)=(long)3780L; /* biYPixPerMeter */ (値の求め方はよく分からないのですが…) ■パレット部を16色追加すると、ファイル作成すらできません。 buff[54]=0x00; /* 0:黒 */ buff[55]=0x00; buff[56]=0x00; buff[57]=0x00; buff[58]=0x00; /* 1:茶 */ buff[59]=0x00; buff[60]=0x80; buff[61]=0x00; buff[62]=0x00; /* 2:緑 */ buff[63]=0x80; buff[64]=0x00; buff[65]=0x00; buff[66]=0x00; /* 3:ウグイス ? */ buff[67]=0x80; buff[68]=0x80; buff[69]=0x00; buff[70]=0x80; /* 4:青 */ buff[71]=0x00; buff[72]=0x00; buff[73]=0x00; buff[74]=0x80; /* 5:紫 */ buff[75]=0x00; buff[76]=0x80; buff[77]=0x00; buff[78]=0x80; /* 6:水色 */ buff[79]=0x80; buff[80]=0x00; buff[81]=0x00; buff[82]=0xC0; /* 7:薄グレー */ buff[83]=0xC0; buff[84]=0xC0; buff[85]=0x00; buff[86]=0x80; /* 8:グレー */ buff[87]=0x80; buff[88]=0x80; buff[89]=0x00; buff[90]=0x00; /* 9:赤 */ buff[91]=0x00; buff[92]=0xFF; buff[93]=0x00; buff[94]=0x00; /* 10:黄緑 */ buff[95]=0xFF; buff[96]=0x00; buff[97]=0x00; buff[98]=0x00; /* 11:黄 */ buff[99]=0xFF; buff[100]=0xFF; buff[101]=0x00; buff[102]=0xFF; /* 12:青 */ buff[103]=0x00; buff[104]=0x00; buff[105]=0x00; buff[106]=0xFF; /* 13:ピンク */ buff[107]=0x00; buff[108]=0xFF; buff[109]=0x00; buff[110]=0xFF; /* 14:水色2 */ buff[111]=0xFF; buff[112]=0x00; buff[113]=0x00; buff[114]=0xFF; /* 15:白(透明) */ buff[115]=0xFF; buff[116]=0xFF; buff[117]=0x00; 設定方法に問題があるのでしょうか? それとも、他の記述部を修正しないと16色のビットマップを作成することが出来ないのでしょうか。 長くなりましてすみません。
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.