图片 Base64 互转
图片编码成 DataURL,也能把 Base64 还原成图片文件
这个工具做什么
这个页面提供图片 Base64 互转:图片编码成 DataURL,也能把 Base64 还原成图片文件。整个处理过程在你的浏览器内完成,文件不会被上传到任何服务器,因此无需注册、也没有次数与体积限制,断网状态下同样可用。
怎么用
- 拖入要编码的图片,建议先用压缩工具压到 10KB 以内
- 选输出形式:完整 DataURL、纯 Base64、CSS 片段或 img 标签
- 需要贴进代码里可以填「每行字符数」自动折行
- 点「生成 Base64」,再点「复制结果」
适用场景
- 把几个小图标内联进 CSS,少发几次请求
- 邮件模板里嵌图片,避免外链被拦
- 把图片塞进 JSON 配置里传给前端
- 临时把图贴到聊天窗口里做对照
实测数据
实测:把 1200 万像素的图缩到长边 1600 并转成 Base64 字符串,用时 74 毫秒。压缩后的图片本体是 206 KB,编码成 Base64 后有 281,803 个字符,膨胀约 37% —— 这是 Base64 用 4 个字符表示 3 个字节的固有开销。
常见问题
图片转 base64 后为什么变大了?
Base64 用 4 个字符表示 3 个字节,理论膨胀 33%,这是编码方式决定的。超过 10KB 的图不建议内联。
base64 怎么还原成图片?
把编码结果贴进「Base64 编解码」工具,切到解码,导出的文本存成 .txt 再改后缀就行;带 data 前缀的直接粘到浏览器地址栏也能看。
内联图片会影响网页加载速度吗?
小于 5KB 的图标会更快,省掉一次请求。大图会拖慢首屏,因为 HTML 体积变大了,反而不如用文件。
什么时候该用 Base64 内联?
只有小图标(< 5 KB)值得内联,能省一次请求。图片超过 10 KB 后 Base64 体积会膨胀约 33%,反而拖慢加载,不如直接用文件。
为什么编码后变大了?
Base64 用 4 个字符表示 3 个字节,理论膨胀 33%。这是编码方式决定的,无法避免。
还原出来的图片格式怎么确定?
按 Base64 内容开头的魔术字节判断,和 data: 前缀声明的类型无关,所以即使前缀写错了也能还原成正确格式。