图片转 Base64
将任意图片编码为 Base64 字符串或 Data URL——几秒钟完成,100% 在浏览器中运行。
源文件
将图片拖到此处
或点击选择文件
输出
什么是 Base64?
Base64 是一种二进制到文本的编码方案,使用一组 64 个可打印的 ASCII 字符来表示二进制数据:大写字母 A–Z、小写字母 a–z、数字 0–9、加号(+)和正斜杠(/),等号(=)用于末尾的填充。每三个字节的二进制输入被编码为四个 Base64 字符,这意味着编码后的输出比原始二进制大约大 33%。Base64 最初在 RFC 2045 中为 MIME 邮件附件定义,如今在二进制数据需要通过纯文本通道传输时被广泛使用,例如 JSON、XML、HTML、CSS、JavaScript 源代码或 Data URL。
由于 Base64 输出是纯文本,可以安全地嵌入源代码文件中、通过剪贴板复制、在 HTTP 请求中发送,并与其他文本字段一起存储在数据库中,无需任何二进制转义。对于图像而言,将文件编码为 Base64 让您可以直接将整个图像内联到 HTML、CSS 或 JavaScript 文件中,从而省去为获取图像资源而发起的单独 HTTP 请求。
为什么要将图片转换为 Base64?
将图片转换为 Base64 字符串有多个实际原因。最常见的是减少网页加载所需的 HTTP 请求数——浏览器不再需要单独请求一个 .png 或 .jpg 文件,而是将图像数据直接嵌入 HTML 或 CSS 中。其他用例包括将图像嵌入 JSON 或 XML 负载、将图标和小型图形存储在源代码中、以及为电子邮件、富文本编辑器或单文件 HTML 文档准备图像。
Base64 对小图像特别有效,例如图标、徽标、项目符号和装饰性 UI 图形,因为这些场景下额外 HTTP 请求的开销可能超过编码带来的体积损失。对于较大的照片,这种权衡就不那么有利了,因为编码后的字符串比原始二进制大约大 33%,且无法被浏览器单独缓存。
何时使用 Base64 图片
在许多情况下,将图像内联比作为单独文件提供更方便或更高效,此时将图像转换为 Base64 是合理的选择。最常见的场景包括:
- 内联 CSS 背景图。小型背景图形和纹理可以作为 Data URL 直接嵌入 CSS,省去额外请求。
- HTML 邮件签名与内容。许多邮件客户端默认屏蔽外部图像;内联 Base64 图像可确保立即显示。
- 单文件 HTML 交付物。需要作为单个 .html 文件分享的报告、仪表板和原型可以将每张图片内联。
- JSON 和 XML 负载。当多部分表单上传不便时,接受图片上传的 API 通常接受 Base64 字符串字段。
- 源代码图标。组件或库使用的小图标可以存储为 .js 或 .ts 文件中的 Base64 字符串。
- 首屏关键图形的懒内联。关键的英雄图像或徽标可以内联,在首次绘制时渲染而无需等待网络往返。
对于浏览器缓存、CDN 分发和懒加载至关重要的较大照片,请避免使用 Base64——将这些图像保留为单独的图像文件并通过普通 URL 提供。
如何将图片转换为 Base64
使用此工具将图像转换为 Base64 只需几秒钟,并且完全在浏览器中完成。无需上传、无需注册、无需安装。工具使用 FileReader API 读取文件,并输出 Data URL 或纯 Base64 字符串。请按以下四步操作:
- 上传图片。点击上传区或将 .jpg、.png、.webp、.gif、.bmp 或 .svg 文件拖放到此处。图像将在本地解码并显示为预览。
- 选择输出格式。选择"Data URL"可获得可直接放入 HTML 或 CSS 的字符串,或选择"纯 Base64"可获得不含 data: 前缀的原始编码字符串。
- 转换为 Base64。点击"转换为 Base64"按钮。Base64 文本将出现在结果区,方便查看。
- 复制或下载。使用"复制到剪贴板"将字符串粘贴到您的代码中,或使用"下载 .txt"将其保存为文本文件。
由于每一步都使用 JavaScript 在浏览器中本地运行,您的图像永远不会被上传到服务器。这使得转换完全私密、快速,并适合敏感或机密的图像。
Data URL 与纯 Base64
这两种输出格式服务于不同目的。理解它们的差异有助于您为用例选择正确的一种。
- Data URL (data:image/png;base64,...)——一个完整的 URL 方案,包含 MIME 类型和 Base64 负载。您可以将其直接粘贴到
<img>标签的src属性、CSS 的url()中,或浏览器地址栏中。这是在 HTML 和 CSS 中内联使用最方便的形式。 - 纯 Base64 (iVBORw0KGgo...)——仅 Base64 编码的字节,没有
data:前缀或 MIME 类型。当消费应用程序已知内容类型并添加自己的前缀时(例如向 API 端点发送数据或在工作流中存储原始编码数据),请使用此形式。
经验法则:当您希望将图像直接嵌入标记或样式表时选择 Data URL;当您将图像数据发送到 API 或使用期望原始编码字符串的系统时选择纯 Base64。
这个图片转 Base64 转换器免费吗?
是的,完全免费,无需注册、无水印,除设备内存外没有任何限制。
支持哪些图片格式?
支持 JPG、PNG、WebP、GIF、BMP 和 SVG。Data URL 中会保留原始 MIME 类型。
为什么 Base64 字符串比原始文件大?
Base64 编码会让二进制数据膨胀约 33%。这是正常的——每三个字节的二进制数据会被编码为四个 ASCII 字符。
我的图片会被上传吗?
不会。所有处理都在本地进行,图片永远不会离开您的浏览器。