スクリーンショット機能の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のアルファ情報についての話題を
オキノさん(おきのん)が記事にしていますので参考にどうぞ。


×

非ログインユーザーとして返信する