3
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

base64した後にgzipしたら元のサイズに戻るのは当たり前? ファイルフォーマットによる差異を調べてみた

Last updated at Posted at 2026-01-17

こちらの記事を書いたら、「そんなの当たり前だろ!」というコメントが多くきたので、JPG以外のフォーマットでもbase64した後にgzipしたらどうなるのかを検証してみました。

皆様にとっては当たり前のことですが、一応クイズ形式の記事にしてみました。
なお、この記事の答えの通りにならないような画像を意図的に作ることはできそうですが、そういうエッジケースは無視して、世の中にある多くの画像についてことだと思ってお考えください。

JPG画像

JPG画像をbase64した後に、gzipするとどうなるでしょうか・・・?

A. ほぼ元のサイズに戻る
B. 元のサイズよりも小さくなる
C. 元のサイズよりも大きくなる

答えは・・・

Aです。
実験結果:

https://qiita.com/shiozaki/items/9d7aeac0dd6733a6e2fb#4-%E6%9C%AC%E5%BD%93%E3%81%AB%E7%90%86%E8%AB%96%E9%80%9A%E3%82%8A%E3%81%AE%E7%B5%90%E6%9E%9C%E3%81%AB%E3%81%AA%E3%82%8B%E3%81%AE%E3%81%8B%E5%AE%9F%E9%A8%93

BMP画像

BMP画像をbase64した後に、gzipするとどうなるでしょうか・・・?

A. ほぼ元のサイズに戻る
B. 元のサイズよりも小さくなる
C. 元のサイズよりも大きくなる

答えは・・・

Bです。

https://www.pakutaso.com/20240644165post-40388.html

こちらの画像をbmpに変換して検証してみました。

$ sips -s format bmp shikun20220402_125829_TP_V.jpg --out shikun20220402_125829_TP_V.bmp

$ cat shikun20220402_125829_TP_V.bmp | wc -c
 5760054
$ cat shikun20220402_125829_TP_V.bmp | base64 | wc -c
 7680073
$ cat shikun20220402_125829_TP_V.bmp | base64 | gzip | wc -c
 2956989

PNG画像

PNG画像をbase64した後に、gzipするとどうなるでしょうか・・・?

A. ほぼ元のサイズに戻る
B. 元のサイズよりも小さくなる
C. 元のサイズよりも大きくなる

答えは・・・

Aです。

https://www.pakutaso.com/20240644165post-40388.html

こちらの画像をpngに変換して検証してみました。

$ sips -s format png shikun20220402_125829_TP_V.jpg --out shikun20220402_125829_TP_V.png

$ cat shikun20220402_125829_TP_V.png | wc -c
 2062109
$ cat shikun20220402_125829_TP_V.png | base64 | wc -c
 2749481
$ cat shikun20220402_125829_TP_V.png | base64 | gzip | wc -c
 2082395

SVG画像

SVG画像をbase64した後に、gzipするとどうなるでしょうか・・・?

A. ほぼ元のサイズに戻る
B. 元のサイズよりも小さくなる
C. 元のサイズよりも大きくなる

答えは・・・

Bです。

https://ja.wikipedia.org/wiki/%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:Ghostscript_Tiger.svg

こちらのファイルを使って実験してみました。

$ cat Ghostscript_Tiger.svg | wc -c
   68630
$ cat Ghostscript_Tiger.svg | base64 | wc -c
   91509
$ cat Ghostscript_Tiger.svg | base64 | gzip | wc -c
   29405

MP3音声

画像ではないですが、おまけです。
MP3音声をbase64した後に、gzipするとどうなるでしょうか・・・?

A. ほぼ元のサイズに戻る
B. 元のサイズよりも小さくなる
C. 元のサイズよりも大きくなる

答えは・・・

Aです。

こちらのフリー音源を使って実験したみました。
https://dova-s.jp/bgm/play13208.html

$ cat これって尾行だったんですかセンセイ.mp3 | wc -c
 2991982
$ cat これって尾行だったんですかセンセイ.mp3 | base64 | wc -c
 3989313
$ cat これって尾行だったんですかセンセイ.mp3 | base64 | gzip | wc -c
 3003615

理由

さて、なぜフォーマットによって結果が変わるのでしょうか?

その理由は・・・

当たり前ですよね

3
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?