什么是图片转Base64编码?

图片转 Base64 编码器可将图片文件(PNG、JPEG、GIF、SVG、WebP)转换为 Base64 编码的文本字符串。可将图片直接嵌入 HTML、CSS 或 JSON,无需托管独立文件,减少 HTTP 请求,标记更简洁。

编码器在你的设备上读取图像字节,生成八种输出:原始 Base64、适用于 src= 属性的 data URI、完整的 <img> 标签、CSS background-image 声明、HTML 图标链接、XML 包装、使用 Image 的 JavaScript 代码片段,以及包含文件名、MIME 类型、大小和 data URI 的 JSON 对象。开启“优化”可先缩小最长边并重新编码为 JPEG 或 WebP,在嵌入前将字符串减半。一次拖放或粘贴多张图像,每张都有带标签的输出。需要反向转换?“将 Base64 解码为图像”部分能将任何字符串转回可查看、可下载的图片。支持格式:PNG、JPEG、GIF、SVG、WebP、BMP、ICO、AVIF 和 HEIC,每个最大 20 MB。

使用方法

  1. 第 1 步 — 通过拖拽、点击上传区域或用 Ctrl+V 粘贴来上传图像。若要先缩小,请打开“编码选项”并设置最大尺寸或质量。
  2. 第 2 步 — 选择输出格式:原始 Base64、data URI、HTML img 标签、CSS background-image、HTML 图标链接、XML、使用 Image 的 JavaScript 代码片段,或用于 API 负载的 JSON 对象。
  3. 第三步——将结果复制到剪贴板或下载为文本文件。

何时使用

  • 在 HTML 邮件里嵌入小 logo 或图标,客户端无需联网就能显示。
  • 把小尺寸 SVG 雪碧图内联进样式表,减少一次阻塞渲染的 HTTP 请求。
  • 在不允许放 URL 的 JSON、JWT、YAML 配置里,把图片以字符串形式带过去。

结果

您有一个 2KB 的 Logo 图标,希望直接嵌入电子邮件模板中。上传 PNG 文件,复制数据 URI 输出,将其粘贴到 HTML img 标签的 src 属性中——无需任何外部托管。

常见问题

Base64 编码后文件会不会变大?
会,大约多 33%。Base64 用四个 ASCII 字符表示三个二进制字节,30 KB 的 PNG 编码后约 40 KB 文本。只有当文件在 5 KB 以下、能省掉一次 HTTP 请求时才划算。
什么时候用 Base64 内联,什么时候用普通链接?
首屏出现、难以缓存的资源(例如每个用户独有的头像、只用一次的小图标)、且体积在 4 至 5 KB 以下时适合内联。跨页面重复使用的图片要走链接,这样浏览器才能复用缓存。
为什么 data URI 开头是 data:image/png;base64,?
这是媒体类型标识。data:image/png 告诉浏览器后面跟着的是 PNG,base64 说明编码方式,逗号把头部和实际数据分开。少了这段,解码器就无法判断图片格式。
可以把 Base64 再解码回图片查看吗?
可以。打开本页的“把 Base64 解码回图片”一栏,粘贴 data URI 或纯 Base64,即可预览图像并下载。URL 安全的 Base64(用 - 和 _ 的那种)也支持。
SVG 文件值得用 Base64 编码吗?
通常不值得。SVG 本身就是文本,在 data URI 里直接 URL 编码会比 Base64 更短。工具仍然支持 SVG,只是当你需要一段可直接传输的字符串时用。

相关工具