今,VB6で画像処理をしているのですが,気になることがあります.
画像からR,G,Bの値を取り出し,適当に加工しFormにSetpixelで描画し,
SavePictureで保存します.
その際,RGB関数で色を求めているのですが,RGB(30,30,30)と代入して
描画しSavePictureした画像のR,G,Bは画像ソフトで見てみると,
24,28,28などと設定した値からずれて出てきます.
これはなぜなんでしょうか?
圧縮なしビットマップ、可逆圧縮のビットマップなら値がずれることはありません。
画像ソフトでJPEGとして保存しなおしたりしていませんか?
多分ディスプレイの解像度のせいじゃないかなーと…思うが。
コントロールパネルで[画面]->[画面のプロパティ]->設定タブをクリック
画面の色(C)を確認してみてください。OSにより表現が違いますが
その中の表現出来る色数が最高(32ビット)になっていますか?
ツイート | ![]() |