图片压缩

免费在线图片压缩:批量减小照片体积,转换为 JPG/WebP/PNG,按最长边缩小尺寸,显示压缩前后大小并可打包 ZIP。无需注册,图片只在浏览器处理不上传。

  • 批量压缩
  • 格式转换
  • 缩小尺寸
  • 图片不上传

🔒 所有计算都在你的浏览器内完成,数据不会上传到任何服务器。

什么时候会用到

  • 网站与博客:把相机或手机照片缩小到 1920 像素、转成 WebP,网页加载更快。
  • 上传有大小限制时:报名系统、政务网站或电商后台限制文件大小,先压缩再上传。
  • 邮件与聊天软件发图:一次压缩多张照片并打包 ZIP,发送更快。
  • 节省手机或网盘空间:批量缩小旧照片,保留画质又省空间。

使用说明

  1. 点击“选择图片”或把图片拖到虚线框里,可以一次添加多张;处理完成后会显示缩略图和压缩前后的文件大小。
  2. 选择输出格式(JPG、WebP、PNG),用滑块调整质量;需要缩小尺寸时在“最长边上限”填写像素,例如 1920。修改设置后所有图片会自动重新处理。
  3. 每张图片点击“下载”单独保存,或点击“全部打包下载(ZIP)”一次带走;点击“清除”可以重新开始。

实际示例

一张手机拍的 4032×3024 照片、文件 3,500,000 字节:输出格式选 JPG、质量 80、最长边上限填 1920。尺寸会等比缩小为 1920×1440;假设浏览器编码后是 420,000 字节,卡片会显示“3.34 MB → 410.2 KB”和“减小 88%”,也就是新文件只有原来的 12%。

一张 120,000 字节(117.2 KB)的 PNG 截图,仍输出 PNG 若得到 156,000 字节,会显示“117.2 KB → 152.3 KB”“比原图大 30%”;改为输出 WebP 得到 48,000 字节时,显示“117.2 KB → 46.9 KB”“减小 60%”。实际大小取决于图片内容和浏览器,这里的字节数是假设值,显示的大小和百分比是工具的计算结果。

批量三张:3.34 MB → 410.2 KB、117.2 KB → 152.3 KB、830.1 KB → 207.0 KB,上方汇总显示“共 3 张:4.26 MB → 769.5 KB(减小 82%)”。汇总是把全部字节相加后再比较,不是三张百分比的平均值。

结果怎么看

  • 绿色“减小 N%”表示新文件比原图小 N%;红色“比原图大 N%”表示重新编码后反而变大,常见于本来就很小的 JPG 用高质量再存一次,或 PNG 存成 PNG,这时直接用原图即可。
  • 变化不到 0.5% 时显示“<1%”。尺寸一栏有箭头表示分辨率被缩小,只有一组数字表示保持原尺寸。
  • 出现“浏览器不支持此格式,已改为输出 PNG”说明你的浏览器(多为旧版 Safari)无法输出 WebP,文件已自动改存为 PNG,扩展名也会随之改变。
  • 1 KB 按 1024 字节计算,与 Windows 资源管理器相同;Mac 的访达按 1000 计算,显示的数字会略有差异。

原理与计算方法

  • 读取:用浏览器内置的 createImageBitmap 解码,会按照片的 EXIF 方向自动转正;无法解码时改用 <img> 加载(例如 SVG)。
  • 缩小:最长边超过上限时,宽和高同乘“上限 ÷ 最长边”后四舍五入,短边至少 1 px;只缩小不放大,并使用 canvas 的高质量平滑缩放。
  • 编码:把图片画到 canvas 后调用 canvas.toBlob(格式, 质量),质量 10~100 对应 0.1~1.0。JPG 没有透明通道,透明处先填充白色;PNG 是无损格式,质量设置不起作用。
  • 比较:变化百分比 = |1 − 新文件大小 ÷ 原文件大小| × 100,四舍五入到整数;汇总按所有成功项目的字节总和计算。
  • ZIP:用 fflate 在浏览器内打包,图片已经压缩过所以只存储不再压缩;同名文件自动加 -2、-3,不会互相覆盖。

适用限制

  • 重新编码会去掉 EXIF(拍摄时间、GPS 位置、相机型号)和色彩配置文件,需要保留这些信息时不适合使用。广色域(Display P3)照片可能会有轻微色差。
  • 动态 GIF、动态 WebP 只保留第一帧;HEIC 只有支持的浏览器(例如 Safari)能读取,其他浏览器会提示无法读取。
  • 压缩效果由浏览器内置编码器决定,同样的设置在 Chrome、Firefox、Safari 得到的大小和画质不同;也无法直接指定“压缩到 200 KB 以内”这类目标大小,需要自己调整质量。
  • 超大图片受浏览器 canvas 尺寸和内存限制(iPhone 上的 Safari 尤其严格),可能无法输出,可以先填写最长边上限再试。

常见问题

质量设置多少合适?

普通照片用 JPG 或 WebP、质量 70~80,肉眼几乎看不出区别,文件通常能小很多;需要印刷或后期处理时用 90 以上。文字截图、图表建议用 PNG 或 WebP,JPG 容易在文字边缘出现噪点。

为什么压缩后文件反而变大了?

原图已经压缩得很小(例如本来就是低质量 JPG)时,用较高质量重新编码会变大;PNG 转 PNG 也经常变大,因为浏览器内置的 PNG 编码器没有专门优化。这时可以降低质量、改用 WebP,或直接使用原图。

透明背景的 PNG 转成 JPG 会怎样?

JPG 不支持透明,透明部分会变成白色。要保留透明背景请选择 WebP 或 PNG。

我的图片会被上传吗?

不会。读取、压缩、打包 ZIP 都在你的浏览器里完成,图片不会发送到任何服务器,也不会被保存,关闭页面就没了。

怎么把照片压缩到 1 MB 或 200 KB 以下?

先在“最长边上限”填 1600~1920,再把质量调到 70~80;还不够小就继续降低质量或尺寸。每张图都会显示压缩后的大小,可以边调边看。

JPG 和 WebP 该选哪个?

在画质相近的情况下,WebP 通常比 JPG 小约 25~35%,主流浏览器都支持;要用于旧系统、印刷或只接受 JPG 的上传表单时,选 JPG 更保险。

压缩后会保留照片的拍摄信息(EXIF)吗?

不会。重新输出时只保留画面,拍摄时间、GPS 位置等信息都会被移除,分享照片时也更不容易泄露位置。

参考来源