piapia123
zh

图片转 Base64

网络与网页

所有处理都在浏览器本地完成,数据不上传服务器

把图片拖到这里,或点击选择

也可以直接按 Ctrl/⌘ + V 粘贴截图

PNG / JPEG / WebP / GIF / BMP / SVG / AVIF / ICO · 单张不超过 10 MB

图片只在你的浏览器里读取和转换,不会上传到任何服务器。断网也能正常用。

预览

还没有选择图片

结果

把图片转成 Base64 文本或 Data URL,直接嵌进 HTML、CSS 或接口请求里。拖进来、点着选、或者截图后直接按 Ctrl 或 Command 加 V 粘贴都行。转换前可以先按最长边等比缩小、换成 PNG、JPEG 或 WebP 并调整质量,所以好几 MB 的照片也能压到适合内联的体积。图片自始至终只在你的浏览器里读取和转换,没有任何一步会发往服务器 —— 断网状态下这个工具照样能用。

功能

  • 三种入口:拖拽、点击选择、剪贴板粘贴,截图后直接粘贴最快
  • 按最长边等比缩放,可选 2560 / 1920 / 1280 / 800 / 512 / 256 像素或不限制
  • 只缩不放,不会把一张小图插值成更大的假高清图
  • 输出格式可保持原格式,也可转成 PNG、JPEG 或 WebP
  • JPEG 与 WebP 可调质量;PNG 是无损的,滑杆会自动禁用而不是假装有效
  • SVG 按原始矢量内容读取,不做栅格化;需要位图时可以显式选择输出格式
  • 同时给出预览、原始体积、输出文本体积与像素尺寸
  • 结果过大时提前提示 —— Base64 文本比原文件还大约三分之一
  • 一键复制,或按输出格式下载成文件

使用方法

  1. 拖入图片、点击选择,或者截图后直接按 Ctrl 或 Command 加 V 粘贴
  2. 按需设置最大边长、输出格式与质量
  3. 结果自动生成,同时给出体积与像素尺寸
  4. 点「复制」取走文本,或点「下载」存成文件

常见问题

图片会被上传到服务器吗?
不会。读文件用 FileReader,缩放与格式转换用 canvas,整个过程都在你的浏览器内存里完成,页面不发送任何网络请求。不放心的话可以断网再试一次,功能完全一样。这一点对私人照片和带客户信息的截图尤其重要。
为什么转出来的文本比图片本身还大?
Base64 每 3 个字节要用 4 个字符表示,所以体积会涨到约三分之四。一张 3 MB 的照片会变成 4 MB 的文本。把它内联进 HTML 或 CSS,就等于给页面加了同样大小的负担,所以大图更适合用普通文件地址,Base64 更适合小图标和必须内联的场景。
为什么 GIF 转出来不动了?
canvas 只能取到 GIF 的第一帧,浏览器至今不支持把动画写回 GIF。所以输出会丢掉动画,工具会在结果里明确告诉你这一点。如果必须保留动画,就不要走 canvas,直接对原始文件做 Base64 编码。
为什么 SVG 没有被缩放?
SVG 是矢量图,栅格化会毁掉它无限放大不失真这个唯一的优势。所以选择保持原格式时,SVG 按原始字节读取,缩放选项对它不生效;只有你显式选择 PNG、JPEG 或 WebP 时,才会把它转成位图,并在结果里说明已经栅格化。
HEIC 照片能转吗?
取决于浏览器。Safari 能解码 HEIC,多数 Chromium 浏览器不能。遇到解不开的情况会明确提示「浏览器解不开这张图」,而不是产出一个坏结果。可以先用系统自带工具导出成 JPEG 再试。
文件大小有上限吗?
单张 10 MB。超过这个量级,转出来的文本会长到让标签页明显卡顿,所以在处理开始之前就会明确拒绝,而不是让你等到浏览器卡住才发现。

相关工具