使い方
- Base64 文字列または data:image/gif;base64 URI を貼り付けます。
- プレビューと、判別された形式、画像サイズ、ファイルサイズを確認します。
- アニメーション GIF の場合は、すべてのフレームが残るように「保存形式」を「オリジナル」にします。静止画の場合は GIF のままにして変換します。
- .gif ファイルをダウンロードします。
Base64 の GIF データ
GIF ファイルは GIF89a、または古い形式では GIF87a というテキストで始まります。これらは Base64 では R0lGODlh と R0lGODdh になるため、先頭 6 文字の R0lGOD が確実な目印になります。Base64 の GIF は、CSS に埋め込まれた読み込み中のスピナー、メールやアクセス解析で使われる透明な小さいトラッキングピクセル、チャットや掲示板のデータベースに保存されたリアクション用アニメーションなどで見かけます。1 × 1 の透明な GIF はわずか数十バイトで、有効な画像ファイルとしては最小クラスであるため、小さなインライン画像によく使われます。
アニメーションを保持する
オリジナルでダウンロードすると、デコードしたバイト列がそのまま書き出されるため、すべてのフレーム、フレームの表示時間、ループ設定が保持されます。変換による出力はすべて画像を canvas に描画して作成されますが、canvas には 1 枚の画像しか保持できません。そのため、変換先が GIF であっても、変換すると最初のフレームだけが残ります。
この制限には便利な使い道もあります。アニメーションの最初のフレームを静止画として取り出すには、GIF を貼り付けて PNG または JPG でダウンロードします。
GIF 変換での色と透過の扱い
- 256 色。GIF は 1 枚の画像につき最大 256 色しか保存できません。このツールはメディアンカット法で画像自体からパレットを作成するため、ロゴ、アイコン、シンプルなグラフィックはきれいに変換できます。写真や滑らかなグラデーションでは、微妙な色合いが失われることがあります。
- 1 ビットの透過。各ピクセルは完全な透明か完全な不透明のどちらかになります。柔らかい影やアンチエイリアス処理された輪郭は、くっきりした輪郭になります。
GIF との互換性よりも色の正確さや滑らかな透過が重要な場合は、PNG または WebP に変換するほうが適しています。
コマンドラインなら、base64 --decode spinner.txt > spinner.gif の 1 ステップでデコードできます。
よくある質問
変換後に GIF が動かなくなったのはなぜですか?
変換した出力には最初のフレームしか含まれません。エンコードされたとおりのアニメーション GIF を保存するには、「保存形式」で「オリジナル」を選択してください。
変換した GIF に縞模様やざらつきが出るのはなぜですか?
GIF は 256 色しか扱えないため、写真のように多くの色合いを含む画像は、パレット内の最も近い色に減色されます。すべての色を保持する必要がある場合は、PNG または WebP を使用してください。
半透明のピクセルはどうなりますか?
GIF の透過はオンかオフのどちらかです。各ピクセルは完全な透明か完全な不透明のどちらかになるため、柔らかい輪郭の周囲がギザギザになることがあります。