SOFTELメモ Developer's blog

会社概要 ブログ 調査依頼 採用情報 ...
技術者募集中

1x1px 透明png画像のbase64表現

問題

1x1px 透明png画像のbase64表現

答え

iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVQI12NgYAAAAAMAASDVlMcAAAAASUVORK5CYII=

68byte たぶん最小サイズ。

補足

以下の要素から成り立っている

1、pngであることを示すpng認識部
→ 0x89 0x50 0x4E 0x47 0x0D 0x0A 0x1A 0x0A の8byte

以下本体

2、一番最初に必ず存在するIHDRチャンク
→ 13byteのデータとデータ長、データ名称、CRCが各4byteで25byte
イメージの幅 4バイト
イメージの高さ 4バイト
ビットの深さ 1バイト
カラー・タイプ 1バイト
圧縮方式 1バイト
フィルター方式 1バイト
インタレース方式 1バイト

3、画像データ部分(IDATチャンク)
→ 11byteのデータとデータ長、データ名称、CRCが各4byteで23byte
データ部分はペイントソフトに作ってもらったので、画像データの仕様までは調べず。

4、終端を示すIENDチャンク
→ データ長、データ名称、CRCが各4byteで12byte
データ部分はない。

以上、合計8+25+23+12=68byte

関連するメモ

コメント