关于此工具
Base64 把原始图片字节转换成纯文本,这在二进制文件不方便使用的地方很实用:把小图标直接嵌入 CSS 的 `background-image`、HTML 的 `<img src>`,或 JSON 接口负载中,都无需额外的文件请求。这个工具支持双向操作——拖入图片获取其 Base64 文本,或粘贴 Base64(或完整的 data URI)来重建并下载图片。
编码直接读取文件的原始字节并重新表示为文本——不经过画布重绘,因此输出解码后会得到与原文件逐字节相同的结果。一切都在你的浏览器本地完成,不会上传到任何地方。请注意 Base64 文本比原始二进制大约多三分之一,因此更适合小图标和缩略图,而非大幅照片。
常见问题
编码为 base64 会改变图像质量吗?
不会——base64 是对原始文件字节的文本编码,而非对图像的重新压缩。生成的字符串会解码回与原文件逐字节相同的文件,只是以文本而非二进制形式表示(这就是为什么它比原始文件大约大 33%——这是将任意字节表示为可打印文本的代价,而非图像数据的任何损失)。
为什么我编码后的字符串比原始文件大这么多?
Base64 将每 3 个原始字节编码为 4 个文本字符,这是数学上固定的约 33% 大小增长——这对任何 base64 编码来说都是正常且预期的,并非图片特有。当你想将小图片直接嵌入到基于文本的格式(CSS、HTML、JSON)中以避免单独的网络请求时,这是一个值得的权衡,但对于大图片来说,额外的大小会超过跳过一次请求所带来的好处。