Loading...
Loading...
JPG、PNG、WebP、GIF、またはSVGをドロップして、CSS、HTML、Markdown用のコピー&ペーストスニペットを持つBase64データURLを取得します — またはBase64文字列をペーストして、ダウンロード可能な画像にデコードします。
Base64は、画像のようなバイナリデータを印刷可能なASCII文字のみを使用して表現する方法です。データURL形式(data:image/png;base64,...で始まる文字列)は、HTML、CSS、JSON、Markdown、メール署名、またはサーバーの応答に直接画像全体を貼り付けることができ、別のファイルは必要ありません。エンコーディングはロスレスです:Base64をデコードすると、入力されたのと全く同じバイトが得られます。トレードオフはサイズです — Base64は基になるバイナリより約33%多くの文字を必要とするため、100 KBのPNGは約134 KBのBase64テキストになります。これにより、小さなアイコン、インラインSVG、および一時的なスニペットには理想的ですが、大きなヒーロー画像には不適切です。このツールは、ドロップした任意の画像をエンコードし、任意のBase64文字列をダウンロード可能な画像にデコードします。すべての作業はブラウザ内で行われます。
ディスク上の画像をエンコードするには、画像 → Base64を使用します。データURL、API応答、またはCSSファイルからコピーした文字列をデコードするには、Base64 → 画像を使用します。
エンコードするには、JPG、PNG、WebP、GIF、SVG、BMP、ICO、またはAVIFをアップロードエリアにドラッグするか、デバイスから選択するためにクリックします。画像は結果カードの上部にプレビューされます。
5つの貼り付け準備が整ったスニペットが生成されます:完全なデータURL、生のBase64(プレフィックスなし)、CSS背景画像、HTML <img> タグ、およびMarkdown画像。必要なものをクリックしてコピーします。
Base64 → 画像に切り替え、完全なデータURLまたは生のBase64部分のいずれかを貼り付けます。ツールは短い文字列を自動的にパディングし、プレフィックスが欠けている場合はPNGを仮定します — プレビューするにはデコードをクリックします。
デコードが完了すると、プレビューカードに画像の寸法と推定ファイルサイズが表示されます。ダウンロードをクリックして、元のバイトを正しい拡張子でディスクに保存します。
1. ブラウザのFileReader.readAsDataURL()が画像ファイルをバイナリとして読み取ります。 2. バイトを3つのチャンク(24ビット)にグループ化し、各チャンクを4つのASCII文字として再エンコードします。 3. 64文字のアルファベットはA-Z、a-z、0-9、さらに'+'と'/'(パディング用に'=')です。 4. 出力は'data:<mime>;base64,'でプレフィックスされ、使用可能なデータURLになります。 5. デコードはすべてのステップを逆にします:プレフィックスを削除し、URLセーフなバリアントを正規化し、4の倍数にパディングします。 6. デコードされたバイトはBlobにラップされ、createObjectURLを介して公開されます — またはデータURLとして直接使用されます。
33%のサイズオーバーヘッドは数学に組み込まれています:3バイトのバイナリは4バイトのASCIIになります。これは4/3の比率です。これは厳しい下限です — 広く使用されている圧縮されたBase64バリアントはありません。データURLのMIMEプレフィックスはオプションの装飾ではありません:ブラウザ、Markdownレンダラー、およびメールクライアントは、バイトをどのようにレンダリングするかを決定するためにそれを使用します。'data:image/...'プレフィックスなしで生のBase64を貼り付けると、このツールはPNGをデフォルトとし、スクリーンショットやアイコンには安全な推測ですが、ソースが実際にはJPGであった場合、破損したプレビューを生成する可能性があります。ベストプラクティスは、コピーまたは貼り付ける際に完全なデータURL形式を維持することです。
参考文献: MDN — データURL
| 使用ケース | コピーするためのベストスニペット |
|---|---|
CSSに小さなアイコンをインラインで直接埋め込む | CSSのbackground-imageスニペットをコピーします。~5 KB未満のアイコンのHTTPリクエストを排除します。 スピナー、チェックマーク、スプライトスタイルのアイコンに適しています。 |
JSONまたはREST APIレスポンスに画像を埋め込む | データURLスニペットをコピーします。受信者はそれを直接<img src>またはCSSの背景にドロップできます。 チャットアプリ、スクリーンショット、アバターアップロードによく使われます。 |
スクリーンショットをMarkdownブログ投稿やGitHubの問題に貼り付ける | Markdown画像スニペットをコピーします。CDNにアップロードせずにインラインでレンダリングされます。 一部のMarkdownレンダラー(GitHub)は非常に大きなデータURLを拒否します — 小さく保ってください。 |
メールやAPIからBase64文字列をデコードして使用可能なファイルにする | Base64 → 画像に切り替え、文字列を貼り付け、デコードを押してからダウンロードします。 生のBase64にも対応しています — MIMEが欠けている場合はPNGがデフォルトになります。 |
最終更新日