スクリーンショット機能のPNG32は無駄では。
※クリックして画像拡大
なんとなく撮影したこの画像
マビノギのスクリーンショット機能で撮影しています。
右下にMABINOGIのロゴがつくのが特徴ですね。
この方法で保存するとファイルサイズが4.25MBにもなります。
※クリックして画像拡大
ペイントで開いてそのまま上書き保存しました。
ファイルサイズは3.11MBに減っています。画質は全く落ちていません。
これはどういうことなのでしょうか?
実は、マビノギのスクリーンショット機能の保存形式はPNG32なのです。
普通のPNGはPNG24です。
PNG24でもフルカラーなので画質の低下は一切ありません。
PNG32は画像を加工するときに透過情報を加えるための形式です。
ロゴが透過されてるのかなとも思いましたが
JPEGでもロゴはついていたのでそれはないなと思います。
従ってSS撮影でPNG32は無駄なのでは・・・と思います。
PNG24のほうが軽いので直してほしいですね。
気づいたきっかけは・・・。
普段のPNG撮影方法よりファイルサイズが大きいことに疑問に思ったんです。
PNGの情報って画像編集ソフトで画像情報見ても判別できなくて・・・。
どうしたもんかと少し悩んだんですが、
ペイントで保存するときにこのメッセージが出てくるので、
フルカラーに透過情報が入ってるからPNG32だなってわかるんですよね。
早く気づけよ自分・・・。
まぁ確実を見るならPNGのファイルフォーマットで
26バイト目にカラータイプがあることがわかるので、
PNGファイルのバイナリ調べて26バイト目に0x06を見つければ
トゥルーカラー+α画像(透過情報)なので
PNG32ということがわかります・・・。
2020.3.29 訂正:
※当初19バイト目と書いてましたが26バイト目でした。
書き間違えてました申し訳ございません。
PNG ファイルシグネチャ(8):89 50 4E 47 0D 0A 1A 0A・・・”PNG”
IHDR:
Length(4):00 00 00 0D・・・"13"
Chunk Type(4):49 48 44 52・・・”IHDR”
画像の幅(4):
画像の高さ(4):
ビット深度(1):
カラータイプ(1):
0:グレースケール
2:トゥルーカラー:R 8bit G 8bit B 8bitなので1ピクセルに24bit
3:インデックスカラー
4:グレースケール+α画像(透過)
6:トゥルーカラー+α画像(透過):α画像 8bit追加なので1ピクセルに32bit
マビの画像で試すと規約違反かもしれないので
テスト画像でバイナリを観てみるとこんな感じです。
列の見方は0から数えているので、
「+F」は16バイト目、「+9」は10バイト目、
したがって2行目の+9の位置が26バイト目になります。
「02」はトゥルーカラーです。透過情報はありません。
「06」はトゥルーカラー+α画像(透過)です。
マビノギのPNGファイルはこちらのようになっています。
関連して、PNGのアルファ情報についての話題を
オキノさん(おきのん)が記事にしていますので参考にどうぞ。