批量压缩图片
几十张图一次拖进来,统一压到同一套约束:质量、最长边,或者直接给一个目标体积让它自己往下试。压完逐张看得到「原始体积 → 压缩后体积」,点开就能用分割线逐像素对比画质,确认没问题再一键打包。
把图片一次性拖进来,或点击多选
支持 JPG / PNG / WebP / AVIF,一次最多 60 张、单张不超过 50 MB。解码、缩放、编码都在本地完成,原图不会离开这台设备。
压缩是怎么发生的
解码与缩放
按最长边等比缩放,比例差得多时用阶梯降采样(连续减半再收尾),避免一次性大比例缩小产生的锯齿。小图不动 —— 只缩不放。
按约束编码
不设目标体积时只编码一次。设了就沿质量梯子往下试,仍超标再按 25% 步长收尺寸(最多 3 轮,不低于 320px);都做不到才标「未达标」,不会谎报成功。
体积对账
输出比原图大且尺寸没变,就退回原文件。这条规则让「压缩」这件事永远不会有负收益。
参数怎么选
下面不是「官方推荐值」,而是同一批图在不同用途下比较稳的区间。实际收益取决于原图本身 —— 已经压过一轮的图再压,收益会明显变小。
左右滑动查看完整表格 →
| 用途 | 质量 | 最长边 | 说明 |
|---|---|---|---|
| 网页配图 / 博客插图 | 75 – 85 | 1600 | 屏幕上看不出差别,常见能省一半以上 |
| 聊天 / 邮件附件 | 70 – 80 | 1920 | 兼顾文字可读性,单张控制在 300 KB 内 |
| 电商详情 / 商品主图 | 85 – 90 | 1200 – 1600 | 纹理与文字边缘要保住,别压到 80 以下 |
| 素材库归档 | 60 | 不缩放 | 体积优先;再配「目标体积」逐张卡上限 |
和另外两个工具的分工
这里只做「同类图片统一变小」,不改变构图。要给同一张图出 11 种社交平台规格,去尺寸转换器;要给站点生成 favicon 与 App 图标,去图标工坊。需要先裁掉一截再压,建议在转换器里裁好导出,再拿回来批量压。
常见问题
图片会被上传到服务器吗?
不会。解码、缩放、编码全部走浏览器 Canvas,页面里没有任何接收文件的接口。你可以打开开发者工具的 Network 面板核对:除了页面自身的静态资源,不会出现带着你图片的请求。
为什么有的图压完没有变小?
两种情况。一是原图本身已经是高压缩产物(比如社交平台回传的图),重编码只会更差;二是你没有勾选「最长边」,尺寸没变小而编码后反而更大。这两种情况都会直接交付原文件,并在那一行标注「保留原图」,不会让你拿到一个更大的文件。
换成 WebP 会不会有兼容问题?
现代浏览器(Chrome、Edge、Firefox、Safari 14+)都支持 WebP。但如果图片要投放到老系统、邮件客户端或某些 CMS,建议在「输出格式」里明确选 JPEG。智能模式对 JPEG 源保持 JPEG,只把 PNG / WebP / AVIF 源转成 WebP。
GIF 动图和 HEIC 为什么不能压?
GIF 动图用 Canvas 重编码会变成静帧,动画直接丢掉,所以宁可不做;HEIC 是 iPhone 的私有封装,浏览器无法解码。这两种会被跳过并在页面顶部说明原因,不会静默消失。
EXIF 会保留吗?
不会。重编码只写像素,拍摄设备、光圈快门、GPS 坐标全部丢弃。这通常正是你想要的(发到网上不暴露位置),但如果你依赖 EXIF 做归档,请先备份原图。
为什么改了参数不自动重压?
一次可能是 60 张,追目标体积时每张最多编码 9 次(6 档质量 + 3 轮收尺寸)。跟随滑杆实时重算会把主线程按死,所以这里改成「参数变更 → 提示 → 点一次重新压缩」。单张工具(尺寸转换器、图标工坊)输出少,仍是实时重算。
需要单张精修构图?用尺寸转换器