FIRST CH TOOLS / 17 BASE64 & DATA URI
Base64 & Data URI エンコード/デコード
テキストをBase64へ相互変換し、ドラッグ&ドロップした画像から data:image/… のData URI・HTMLの <img>・CSSの background-image をそのまま貼れる形で生成します。SVGはパーセントエンコードで小さく出力。URLセーフBase64・76桁改行・デコードにも対応します。
テキスト ⇄ Base64(どちらに入力しても即時変換)
日本語はUTF-8のバイト列に直してからBase64にします(多くの文字が1文字3バイト=Base64では4文字)。URLセーフBase64は + / を - _ に置き換え、パディングの = を落とした形式で、JWTやクエリ文字列で使われます。デコード側はどちらの形式でも、改行や空白が混じっていても、パディングが欠けていても読み取ります。
画像・ファイル → Data URI + HTML / CSS スニペット
ファイルは読み込むだけで、アップロードは行いません。埋め込みに向くのは数KBまでのアイコンや小さなSVGです。
Data URI / Base64 → 元のファイル・テキストへ戻す
How to Use
- テキストを変換する左のテキスト欄に入力すると右にBase64が出ます。逆に右へBase64やdata URIを貼れば左に元のテキストが戻ります。URLセーフ形式・76桁改行も切り替えられます。
- 画像をData URIにする2番目のタブへ画像をドラッグ&ドロップすると、
data:image/…のURIと、そのまま貼れる<img>・CSSのbackground-imageが生成されます。 - コピーして貼り付ける各欄のコピーボタンで取得します。Data URIやBase64を元のファイルへ戻したいときは3番目のタブに貼り付けてダウンロードしてください。処理はすべてブラウザ内で完結します。
About This Tool
Base64はバイト列を64種類の文字(A–Z a–z 0–9 + /)だけで表す方式です。3バイトを4文字に置き換えるため、データは必ず約1.33倍に増えます。画像やフォントをHTML・CSSに直接埋め込む data: URI、メール添付(MIME)、JSONやJWTでのバイナリの受け渡しなど、「テキストしか通らない場所にバイナリを通す」ために使われます。暗号化ではないので、機密情報を隠す用途には使えません。
Data URIでの埋め込みはリクエストが1回減る代わりに、キャッシュとレンダリングで損をします。埋め込んだ画像はHTML/CSS本体と一体になるため単独でキャッシュされず、CSSに入れた場合はその分だけレンダリングを止める時間が伸びます。目安として数KBまでのアイコンや区切り線、あるいはメールHTMLのようにファイル参照が使えない場面に向いています。本ツールは10 KBを超えたときに注意を表示します。
SVGについては、base64よりパーセントエンコードのまま埋め込む方が小さくなります(base64は必ず約1.33倍になるのに対し、SVGの中身はほとんどがそのまま書ける文字のため)。本ツールはSVGを読み込んだときに両方の長さを表示し、既定で小さい方を選びます。出力は & " < > # % と空白・非ASCIIを必ずエスケープするため、HTML属性にもCSSの url("…") にもそのまま貼れます。
デコード側は、標準Base64とURLセーフBase64のどちらでも、改行・空白が混じっていても、末尾の = が欠けていても読み取ります。data URIが名乗るMIMEタイプよりも、実際の中身(マジックナンバー)から判定した種類を優先するため、宣言がずれているコピペでも正しくプレビューできます。
URLにテキストを含めて共有できます: /base64/?text=Hello / /base64/?b64=SGVsbG8=
From AI Agents
このエンコード/デコードのロジックは、MCP(Model Context Protocol)サーバー @first-ch/tools-mcp の base64_encode ツールとしても提供しており、ブラウザを使わずAIエージェントから直接呼び出せます。導入方法の詳細は AIエージェントからの使い方 を参照してください。
導入
claude mcp add firstch-tools -- npx -y @first-ch/tools-mcp
呼び出し例
# テキストをBase64にする base64_encode(text="こんにちは") # 画像ファイルをdata URI+HTML/CSSスニペットにする base64_encode(path="/path/to/icon.svg", snippets=true) # Base64 / data URI を元に戻してファイルへ書き出す base64_encode( mode="decode", base64="data:image/png;base64,iVBORw0K…", outputPath="/path/to/out.png")
Other Tools
- 01画像→WebP一括変換WebP Converter
- 02白背景の透過White BG Remover
- 03コントラスト比チェッカーContrast Checker
- 04文字数カウントCharacter Counter
- 05llms.txt ジェネレーターllms.txt Generator
- 06JSON-LD構造化データ生成JSON-LD Generator
- 07Markdown→PDF変換MD → PDF
- 08OGPメタタグ生成ウィザードOGP Wizard
- 09faviconジェネレーターFavicon Generator
- 10TikTok投稿ツールTikTok Publisher
- 11文字コード・改行コード変換Encoding Converter
- 12画像→AVIF変換+picture生成AVIF Converter
- 13テストデータ生成Test Data Generator
- 14Marp Markdown→スライドMarp Slides
- 15テキスト・コード差分チェッカーDiff Checker
- 16Cron式ビジュアル解説&発火日時Cron Explainer
- 18URLパラメータ分解・UTMタグ編集URL Parameters
- 19HTMLエンティティ・特殊文字エスケープHTML Escape
- 20JSON ⇄ YAML 相互変換&整形JSON ⇄ YAML
- 21PX ⇄ REM / EM 単位変換&スケール表PX ⇄ REM / EM
- 22Colorコード変換&アルファ透過Color Converter
- 23MD5 / SHA-256 ハッシュ生成Hash Generator
- 24JWTデコーダー&有効期限チェッカーJWT Decoder
- 25User-Agent解析&デバイス判定User-Agent Parser
- 26UUID (v4) & ULID 一括生成UUID & ULID Generator
- 27アスペクト比計算&レスポンシブサイズAspect Ratio Calculator