少々お待ちください...(/)
現在、画像を最適化しています。最高の品質結果を保証するために、少々お待ちください。
素晴らしい、画像の圧縮に成功しました。
画像が最適化されました。
現在、画像を最適化しています。最高の品質結果を保証するために、少々お待ちください。
画像が最適化されました。
2つのGIFをこのページで圧縮すると、片方は40%も小さくなり、もう片方はほとんど変わらないことがあります。これはツールの不安定さではなく、GIFの最も分かりにくい特徴なので、アップロード前に知っておく価値があります。GIFには画質スライダーがありません。JPEGのようにサイズと引き換えに画質を落とすことはできません。GIF圧縮ツールができるのは繰り返し部分を取り除くことだけなので、圧縮結果は元のファイルにどれだけ繰り返しが含まれているかにほぼ完全に依存します。
主に2箇所で、どちらも写真家が考える「画像」とは異なります。1つ目はカラーテーブルです。すべてのGIFは最大256色のパレットを持ち、アニメーションGIFの場合は各フレームごとに別々のパレットを持つこともできます。2つ目はフレームです。不注意に書き出されたGIFは、各フレームを完全に保存し、1つの小さなボックスを動かすだけでもキャンバス全体を30回も再描画します。
そのため、作業は各フレームごとのパレットを1つの共通テーブルにまとめ、変化しない部分を再保存しないようにすることです。どちらの工程も色自体には触れません。下記の最初のテストでは、29個のフレームごとのパレットが1つのグローバルテーブルに統合され、ファイルサイズは40%減少し、サンプルで確認した4色も元の値のままでした。
6つのファイルをこのページで圧縮し、返ってきたバイト数を記録しました。
| ファイル | 元のサイズ | 圧縮後 | 変化率 |
| 画面録画アニメーション、30フレーム、640×400 | 41,699バイト | 24,994 | -40.1% |
| 透明背景の単一フレーム | 1,990バイト | 1,861 | -6.5% |
| すでに高圧縮されたアニメーション、24フレーム | 334,312バイト | 334,027 | -0.1% |
| 1つのパレットで構成された単一フレーム | 56,676バイト | 56,676 | 0% |
| コメント、XMP、GPS、カラープロファイル付き8フレームアニメーション | 15,850バイト | 9,953 | -37.2% |
| このページにアップロードしたPNG | 703,830バイト | 74,379 | -89.4% |
最初の行は画面録画で、30フレームのほとんどが同じキャンバスで、ほぼすべてのフレームに別々のパレットがありました。繰り返しが多く、取り除く余地が大きかったのです。5行目はすでに1つの256色パレットで構成された静止画フレームで、これ以上削れる部分がなく、元の56,676バイトのまま返ってきました。
これは、多くの検索結果ページが大きく謳う「圧縮率」の正直な実態です。GIFが動画変換ツールや画面録画ソフト、古い書き出しプリセットから作られた場合は大きな圧縮が期待できますが、すでに最適化済みの場合はほとんど変わりません。圧縮率0%は、ツールが正直に「これ以上削れません」と伝えている証拠であり、画質を落として無理に数字を作っているわけではありません。
再生して確認するのではなく、バイトレベルで検証しました。圧縮後の30フレームファイルも、30フレーム、元の80ミリ秒ディレイを持つ30個のタイミングブロック、ループ設定もそのままでした。キャンバスサイズも640×400のまま。静止画に変換されたり、フレームが削除されたりすることはありません。
透明GIFは6.5%小さくなりました。結果をキャンバスに描画し、4ピクセルを読み取ったところ、角は完全に透明のまま、赤は220, 40, 60のまま、白も純白のままでした。同じチェックを30フレームアニメーションで行っても、ヘッダーブルー、ページグレー、行グレー、赤いボックスはいずれも40%圧縮後も変化なしでした。圧縮による削減は色の近似ではなく繰り返しの削除によるため、こうした結果になります。
圧縮ツールが削れるのは繰り返しだけです。アニメーションが4秒長すぎるとか、幅が800ピクセルも必要ないとかを判断することはできません。そうした選択はファイルをこのページに持ち込む前に行うもので、それが最小サイズの限界を決めます。計算は単純で、GIFのサイズはキャンバス面積×フレーム数にほぼ比例します。幅と高さを半分にすれば約4分の3削減でき、フレームレートを30fpsから12fpsに落としても、一般的なクリップでは見た目にほぼ影響しません。圧縮後も重い場合は、この2つの調整が最も効果的です。
GIFには意外なほど多くのテキスト情報が隠れており、それも1箇所に限りません。コメントブロックはアニメーションなら各フレームごとに存在します。XMPパケットにはPhotoshopなどAdobe製品がカメラのメーカーやモデル、作成者や著作権、GPS座標などを書き込みます。他にもプレーンテキスト拡張やカラープロファイルがありますが、画像を見るだけでは分かりません。
これらすべてを含むファイルを作成し、圧縮後にメタデータツールで確認したところ、10個のコメントブロック、緯度・経度・高度・撮影日、カメラ情報、作成者、クレジット、著作権、カラープロファイル、プレーンテキスト拡張がすべて消えていました。8フレームはそのまま8フレームで、アニメーションも無限ループのままでした。
これらは圧縮と同時に行われるため追加の手間やアップロードは不要です。また、圧縮で繰り返しが見つからなくてもファイルが小さくなる理由は、こうしたテキスト情報が削除されるためです。
アップローダーはPNG、JPG、JPEG、WEBP、AVIF、SVG、TIFF、BMP、JFIFも受け付け、各ファイルは元の形式のまま返却されます。上記のテーブルのPNGもPNGでアップロードし、PNGで返却され、ヘッダーを確認したところ1400×900のままでした。GIFページにアクセスしても他の画像が別の形式に変換されることはありません。
写真(アニメーションでない画像)の場合は、写真のメタデータを削除でEXIFやGPSを画像を再エンコードせずに消去できます。 GIFがアニメーションでなく静止画の場合は、PNG圧縮の方が適しています。 そして、1987年よりずっと後に設計されたフォーマットで同じ内容を扱いたい場合は、WebP圧縮が静止画もアニメーションも対応しています。