前からちょっとちょっと気になっていたのですが、Painterで描いた絵をPaintShopProを使って PNG 及び JPEG 形式で保存したとき、Microsoft Internet Explorer で表示するとそれぞれの色がちょっと違うのですね。
確認するために、グレイのバーを作成したものと、一旦PNGで保存したものをMS-IEで表示後 'PrintScreen'キーでキャプチャしたもの を比較したのが下図。
↓そのままちょっと暗くなっているのがわかると思います。グラフにするとだいたいこんな感じ。
↑PNGで保存したものをキャプチャ
さて、私はInternet Explorerの仕様をぜんぜん知らないのでこういう事が起こる理由はわかりません。が、推測するのは簡単でして、PNGはフォーマットの中に埋込ガンマレベルがありますので、PaintShopProで保存したときに埋め込まれたガンマ値を利用してInternetExplorerが補正して表示した結果 色が変わってしまったということなのでしょう。
とはいえ、Windows←→Mac 間ならともかく、同じPCで保存したときと表示するときで色が変わっているのは面白くありません。ということで、何か良い方法はないか試して見ることにしました。
% identify -verbose ほにゃらら.pngふむふむ、なんかよくわからんけど Gamma 0.45455 なのだそうです。で、PSPでPNG保存せずに一旦 BMP 保存したものを ImageMagick にて
Format: PNG (Portable Network Graphics)
(略)
Gamma: 0.45455
(略)
% convert ほげほげ.bmp ほげほげ.pngして変換すると、identify ではGammaの行が出てこなくなりました。こいつをInternetExplorerに食べさせてみますと、今度はちゃんと元通りの色で表示されるのですねー。ふむふむ、ガンマ値は埋め込むこともできるけど埋め込まないこともできるのですね。 ImageMagickだとOKなんだから・・・ということで、調子に乗って
% convert foo.png tmp.bmpとやってみると、なんと 'Gamma: 1e-05' などという訳のわかんないことになってしまいました(笑)。できたpngファイルをIEに食べさせると画像ファイルとは認識せず、お絵かきソフトに食べさせるとよくわかんないがたがたのシルエットのような絵が表示されました。どうも万能薬とはいえないようです。
% convert tmp.bmp foo.png
ということで、実験のまとめ。それぞれ横に並べたものをキャプチャしてみて、髪の毛のところの色を拾ってみました。
原本(基準) | ○ |
PSPでPNG保存 | × |
同上、モニタガンマ調整(1.35) | × |
BMP保存、ImageMagickでPNG変換 | ○ |
JPEGで保存 | ○ |
MozillaでPNG表示 | ○ |
う~む、PSPでPNG保存はちょっとマズいのかもしれませんなー。いや、どうせガンマ値など固定長ヘッダ部分に書いてあるだけだろうから保存した後でどうにでもなるかな? しかし、どっちにしても面倒くさいし、うまい方法を考えなくてはなりません。
# そんなに大きくは変わらないので気にしないというのが簡単で良いかも(^^;)