任意のファイルを Base64 に変換
エンコード処理はすべてブラウザ内で完結します。データは送信されません
ファイルを Base64 のテキストに変換します —— ドロップするだけで、ファイルは送信されません。出力される data URL(`data:image/png;base64,…`)は `<img src>`、CSS の `url()`、JSON のフィールドにそのまま貼れ、リクエストを1回節約できます。小さくて重要なもの(アイコン、小さなフォント、読み込み中のプレースホルダー)はよくこの形で配られます。 ⚠️ ただし常用すべきではありません。Base64 はサイズを約 3 割膨らませ、しかも HTML / CSS の中に入るため、その資源の独立したキャッシュと並列ダウンロードを失います —— 画像がある程度大きくなると、ページはむしろ遅くなります。判断は単純です:インラインする前に「数 KB を超えないか」を考える。 上限は 4 MB です。理由は「計算できない」からではなく「ページに入らない」から:4 MB のファイルは 5.5 MB の文字列になり、テキストとして DOM に入るとブラウザが目に見えて固まります。ハッシュツールが 512 MB まで扱えるのは、出力が常に同じ長さだからです —— 読む量と出てくる量は無関係です。それ以上のファイルはコマンドラインの `base64 -w0 入力 > 出力.txt` を使ってください。
機能
- 任意のファイル(種類不問)をドロップするだけ。Base64 と完全な data URL を出力
- 先頭に data URL を表示し、コピーボタン1つ —— src・url()・JSON にそのまま貼れます
- ファイル名・元のサイズ・エンコード後のサイズ・MIME・実際の長さを表示
- MIME が空のときは application/octet-stream として扱い、推測しません
- Base64 の代償(3割増・独立キャッシュを失う)も明記します。結果だけを出しません
- 送信は一切なし。オフラインでも使えます
使い方
- ファイルを点線の枠にドラッグします
- 上部に data URL が出るので、右のボタンでコピーします
- 下の表でサイズ・MIME・エンコード後の長さを確認します
- `src`・`url()`・data フィールドに貼り付けます
よくある質問
- Base64 と data URL は何が違いますか?
- Base64 はエンコードされたテキストそのもので、data URL は種類の情報を伴った完全なアドレスです:`data:image/png;base64,` に続けてそのテキスト。`src` や `url()` に貼るのに必要なのは後者で、Base64 だけではブラウザが何のデータか分かりません。このツールは両方を出し、先頭にすぐ使える data URL を置いています。
- 画像を何でも Base64 で埋め込むのが良くないのはなぜですか?
- 代償は3つ。サイズ:Base64 は元より約 3 割大きくなります(3 バイトが 4 文字に)。キャッシュ:埋め込んだ資源は HTML / CSS と一緒に移動するため、1文字変えるだけで塊ごと再取得になり、独立したファイルなら個別にキャッシュできます。並列性:ブラウザがその資源を並列で取りに行けなくなります。目安は「数 KB 以内、かつ実際に使うもの」—— 小さなアイコン、1×1 のプレースホルダー、数百バイトのフォント。大きなファイルは通常どおり参照してください。
- CSS に埋め込めるフォントはどのくらいの大きさまでですか?
- フォントは埋め込みに最も向いた種類です:文字の描画を妨げるため、リクエストが1回増えるごとに空白期間(FOIT)が延びます。ただし日本語や中国語のフォントは数 MB になることもあり、それは全体ではなくサブセット(実際に使う字形だけ)を埋め込む場面です。欧文フォントは通常 10〜30 KB で、埋め込みは一般的です。CJK では埋め込み以上にサブセット化が重要です。
- なぜ 4 MB の上限があるのですか?
- Base64 の出力がテキストで、表示とコピーのために DOM に入るからです。4 MB のファイルは 5.5 MB の文字列になり、それだけのテキストの描画はブラウザに大きな負担です。ハッシュツールが 512 MB まで扱えるのは、出力が常に固定長の要約だからです —— 読む量と出力の長さは無関係です。それ以上は `base64 -w0 入力 > 出力.txt` を使ってください。
関連ツール
画像 Base64 変換
Web画像を Base64 / Data URL に変換。ドラッグ・選択・貼り付けに対応し、長辺での縮小と PNG/JPEG/WebP への変換ができます。ブラウザ内で処理し、送信しません。
Base64 変換
エンコードテキストを Base64 に変換し、Base64 からテキストへ戻します。日本語や中国語、emoji も UTF-8 として正しく処理。すべてブラウザ内で完結し、内容は送信しません。
Base64 → ファイル
エンコードBase64 や data URL をファイルに戻してダウンロード。種類と拡張子は自動判定し、改行・空白・URL-safe 変種・欠けた詰め物にも対応します。送信なし。
URL エンコード
エンコード日本語や中国語、空白・記号を %XX にエスケープし、復元します。URL 全体とパラメータ値では方式が異なり、間違えるとリンクが開けません。ブラウザ内で処理します。
HTML 実体参照
エンコード< > & と引用符を HTML 実体参照に変換し、文字へ戻します。デコードは1回だけで、&lt; は山括弧ではなく < になります。すべてブラウザ内で処理します。
JWT デコードと検証
エンコードJWT を header・payload・signature に分け、秘密鍵で HS256/384/512 の署名を検証します。exp・nbf は読める日時に変換。すべてブラウザ内で処理します。