マビSS

マビノギ、サーバーを超えてしまった人のブログ

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



×

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

あと 2000文字

コメントは必須項目です。