🧬 粘贴 Base64 字符串

带不带 data:image/…;base64, 前缀都可以;中间的换行和空格会自动忽略。

📄
也可以把存着 Base64 的 .txt 拖进来
🖼️

粘一段 Base64,看看它到底是哪张图。

📊 支持的图片类型(按文件头自动识别)

不带 dataURL 前缀时,工具会读二进制的「魔数」来判断它到底是什么图。

格式文件头(十六进制)文件头(可读)导出扩展名
PNG89 50 4E 47‰PNG.png
JPEGFF D8 FFÿØÿ.jpg
GIF47 49 46 38GIF8.gif
WebP52 49 46 46 … 57 45 42 50RIFF…WEBP.webp
BMP42 4DBM.bmp
ICO00 00 01 00(图标).ico

🧠 常见的「解不出来」原因

报错了别急,九成是下面这几种情况之一。

现象多半是因为怎么解决
提示「包含非法字符」混进了引号、逗号、HTML 实体、中文空格或说明文字只保留 A-Z a-z 0-9 + / = 这些字符,删掉前后多余内容
提示「解码失败」字符串被截断,长度不是 4 的倍数,或少了末尾的 =重新完整复制一次,注意别漏掉尾巴
提示「无法识别图片类型」数据不是图片(可能是文本/PDF),或前缀里的 MIME 写错了确认来源是图片;纯 Base64 时把前缀补上试试
预览是空白 / 裂图浏览器不支持该格式,或数据本身已损坏下载下来用看图软件打开确认;换 Chrome / Edge 再试
图片特别大、页面卡Base64 里塞了一张几 MB 的图下载后本地查看,别在页面里反复预览

⚠️ 免责声明:本工具仅做 Base64 解码与格式识别,不会修复已损坏的数据;若原始数据不完整,解码结果可能无法正常显示。
解码能力受浏览器支持的图片格式限制(PNG / JPEG / GIF / WebP 通用,BMP、ICO 等在个别浏览器上可能无法预览,但下载下来的文件本身是完整的)。
所有处理均在你的浏览器本地完成,你粘贴的内容不会上传到任何服务器,页面关闭后数据即清除。

🖼️

Base64 转图片(在线解码还原)

图片处理 完全免费 🌙 支持黑夜模式 🔒 纯前端,数据不上传 🔍 自动识别格式 📋 支持 txt 拖入

接口返回一大串 iVBORw0KGgoAAAANSUhEUg…、邮件源码里躺着一段 data:image/png;base64,…、数据库里存了一列看不懂的字符——你想知道这串东西到底是什么图,或者干脆把它还原成文件。
这就是这个工具干的事:把 Base64 字符串解码回图片,直接预览并下载。
它对你粘贴的内容很宽容,两种写法都认:
① 完整 dataURL:data:image/png;base64,iVBOR…——直接从前缀里读出 MIME 类型,最准确;
② 纯 Base64:只有 iVBOR…——那就看二进制的「文件头魔数」:PNG 开头是 89 50 4E 47、JPEG 是 FF D8 FF、GIF 是 47 49 46、WebP 是 RIFF…WEBP、BMP 是 42 4D、ICO 是 00 00 01 00。看开头几个字节就能判断它是什么格式,这也是很多软件识别文件类型的通用做法。
解码过程就三步:剥掉前缀 → atob 解成二进制 → 装进 Blob 生成图片地址。中间的换行、空格会自动忽略,所以从邮件、日志、JSON 里复制出来带缩进也不用手工清理。
解不出来的时候,它会明确告诉你问题在哪,而不是默默失败:
· 「包含非法字符」——多半是混进了引号、逗号、HTML 实体(比如 <)或者前后带了说明文字,Base64 只该有 A-Z、a-z、0-9、+、/、= 这些字符;
· 「解码失败」——字符串被截断了,长度不是 4 的倍数,或者尾巴的 = 补位符丢了,重新完整复制一次;
· 「无法识别图片类型」——这段数据压根不是图片(可能是文本或 PDF),或者前缀里的 MIME 写错了。
解出来之后,页面会告诉你图片格式、像素尺寸、文件大小,给你预览,再一键下载成 .png / .jpg / .gif 等对应后缀的文件。
还有个偷懒的用法:如果你把 Base64 存在 txt 里,直接把文件拖进下面的区域就行,不用手动选中复制。
两点实话:预览能力受浏览器限制——PNG/JPEG/GIF/WebP 通用,BMP、ICO 在个别浏览器上可能显示不出来,但下载下来的文件是完整的;另外工具只做解码,修不了已经损坏的数据,源数据不完整的话解出来也是坏的。
最后:你粘贴的内容全部留在本地浏览器里,不会上传到任何服务器,关掉页面就清干净了。

类别图片处理 / 编码
输入形式dataURL / 纯 Base64 / txt 文件
识别方式MIME 前缀 + 文件头魔数
运行方式纯前端本地,不上传

核心特性

两种写法都支持
自动识别格式
文件头魔数判断
中文错误提示
txt 拖入读取
预览 + 下载

关于这个工具

怎么解:
① 归一化:去掉首尾空白与中间所有换行、空格,避免从日志/邮件里复制出来带缩进;
② 剥前缀:用正则匹配 ^data:([^;,]+);base64,,命中就取出 MIME 类型并截掉前缀;
③ 字符集校验:只允许 A-Z a-z 0-9 + / = - _,出现别的字符立刻给出「非法字符」提示(顺带支持 URL-safe 的 - _ 变体);
④ 补齐补位:把长度补到 4 的倍数后调用 atob 解码成二进制字符串,再转成 Uint8Array 装进 Blob;
⑤ 定类型:有 MIME 就直接用,没有就读前 12 个字节的魔数(PNG / JPEG / GIF / WebP / BMP / ICO)判断;
⑥ 预览与下载:用 blob URL 加载图片拿到宽高,按类型给出扩展名,一键下载。
它不做:不修复损坏数据、不做图片编辑、不解码非图片内容(如 PDF、音频)。

怎么用

  1. 第 1 步
    把 Base64 字符串或完整 dataURL 粘进输入框。
  2. 第 2 步
    也可以把存着 Base64 的 .txt 文件拖到下方区域,自动读入。
  3. 第 3 步
    点「🖼️ 解码成图片」,看格式、尺寸、大小。
  4. 第 4 步
    确认预览没问题,点「⬇️ 下载图片」存到本地。
  5. 第 5 步
    报错的话照着提示改:非法字符 / 被截断 / 不是图片,三种情况最常见。

更新记录

  • v1.0 2026-09-20 工具正式上线:支持把 Base64 字符串 / 完整 dataURL 一键解码还原成图片,自动识别 PNG / JPEG / GIF / WebP / BMP / ICO(无前缀时按文件头魔数判断);提供预览、尺寸与大小展示、一键下载,并对非法字符、字符串截断、非图片数据给出明确中文提示;支持拖入 .txt 文件自动读取。全程浏览器本地处理,数据不上传,适配黑夜模式。

常见问题

带不带 data:image/png;base64, 前缀有区别吗?
都能解,但带前缀更准。
· 带前缀:工具直接从 data:image/png;base64, 里读出 MIME 类型(这里是 image/png),一步到位;
· 不带前缀:工具会先把 Base64 解成二进制,再读开头的几个字节判断格式——PNG 是 89 50 4E 47、JPEG 是 FF D8 FF、GIF 是 47 49 46、WebP 是 RIFF…WEBP,这个方法也很可靠。
所以复制的时候能带上前缀就带上,省一步判断;如果只剩纯 Base64 也没关系,照样能解。
提示「包含非法字符」是什么意思?
意思是你这串字符里混进了不该有的东西。合法的 Base64 只应该包含:A-Z、a-z、0-9、+、/、=(以及 URL-safe 变体里的 - 和 _)。
常见的污染源:
· 从 JSON 里复制时把引号、逗号、大括号一起带上了;
· 从 HTML 里复制时带上了 HTML 实体(比如 < ");
· 前后带了解释文字、变量名(imgData = "…");
· 混进了中文空格、全角字符。
解决办法:只选中那一长串字符本身再复制;中间的普通换行和空格工具会自动忽略,不用手工清理。
提示「解码失败」是不是数据坏了?
大概率是字符串不完整。Base64 每 4 个字符代表 3 个字节,末尾不够时用 = 补位,所以:
· 复制时被截断(常见于终端自动折行、日志被裁切、聊天工具截断长消息);
· 末尾的 = 被当成多余符号删掉了;
· 中间混进了换行以外的分隔符。
工具会自动补齐 =,但如果长度本身对不上,就会报这个错。
解决办法:回到源头重新完整复制一次,最好一次性全选,别分段复制再拼接。
预览显示不出来,但提示已经解码成功了?
这种情况通常是浏览器不认识这个格式,而不是数据有问题。
· PNG / JPEG / GIF / WebP:所有现代浏览器都能预览;
· BMP / ICO / TIFF 等:部分浏览器无法直接显示,会变成空白或裂图。
判断办法:直接点下载,用本地看图软件打开——下载下来的文件是完整无损的,工具只是做了字节还原,不做格式转换。
如果确实需要预览,可以先用「图片格式转换」把它转成 PNG。
我粘贴的内容会被上传吗?
不会。解码用的是浏览器原生的 atob 和 Blob,全部在你自己的浏览器里完成,不会发送到任何服务器,关掉页面数据即清除。
所以拿它来解内部接口返回的敏感图片、带个人信息的证件照也完全不用担心。

💬 留言板 0

全部留言需审核通过后展示
💬

还没有留言,来抢沙发吧!

✍️ 说点什么
0 / 500
图形验证码