图片压缩

图片

在线图片压缩与格式转换

图片压缩最常见的场景其实很具体:论坛或政务系统限制上传不超过 200KB、微信公众号后台嫌图片太大、网站首屏加载被几张几 MB 的大图拖慢。这些需求的共同点是有明确的体积目标,而不是笼统地「压小一点」。

所以这个工具除了质量滑块,还提供了填目标 KB 后自动适配的功能。点「适配」后它会用二分法反复编码,找出不超过你给定体积的最高质量,省掉手动来回试的过程。滑块也会同步更新,方便你知道最终落在哪个质量档。

判断压缩是否可接受,光看数字没用。预览区做成了分屏对比:按住中间的竖线左右拖动,左边露出原图,右边是压缩结果,同一个位置的细节直接贴在一起看。天空、皮肤和纯色背景是最容易先出问题的区域,可以重点拖到那里。

处理过程全在浏览器里用 canvas 完成,图片不会离开你的电脑,也就没有上传等待、没有排队、没有次数限制,导出的图上也不会被加任何水印。顺带一提,如果单纯为了瘦身,把输出格式换成 WebP 往往比在 JPG 上继续调质量更有效;只有在需要兼容很老的环境时才有必要坚持用 JPG。

功能一览

  • 三种输出格式:JPG、PNG、WebP 任选,同等观感下 WebP 通常体积最小,可用来做格式转换
  • 质量调节:滑块范围 1 到 100,松手后立即重新编码并刷新预览,默认 80
  • 目标大小适配:填写上限 KB 后点「适配」,工具用二分法找出不超过该体积的最高质量并回填滑块
  • 分屏对比:拖动画面中间的竖线,左侧原图右侧压缩结果,同一位置直接对照细节损失
  • 信息面板:显示原图大小、像素尺寸、原始格式,以及压缩后大小与输出格式
  • PNG 的特殊处理:PNG 是无损编码,此时滑块按百分比缩小分辨率来减小体积,标签上也会提示
  • 输入方式:点击选择、拖入或 Ctrl/Cmd+V 粘贴,接受 PNG/JPG/JPEG/WebP,单张不超过 20MB

常见问题

压缩后画质会差很多吗?
取决于质量值。JPG 与 WebP 在 75 到 85 之间通常肉眼看不出差别,体积却能降到原图的三到五成,默认的 80 就是这个区间。低于 60 后天空、渐变和纯色背景会开始出现色块,文字边缘会发毛。改完滑块拖一下中间的竖线做左右对比,比凭数字猜更靠得住。
为什么 PNG 的压缩效果不明显?
PNG 是无损格式,画质里没有可以牺牲的余量,浏览器的编码器也不提供有损选项。所以本工具在 PNG 模式下把滑块解释为分辨率百分比,比如 70 就是把长宽都缩到七成。如果你要的是明显瘦身而不是保持像素,建议直接把输出格式换成 WebP,截图类图片往往能小一个数量级。
为什么压缩完文件反而变大了?
因为 canvas 是把图片解码后重新编码,原文件里已有的优化(比如经过 mozjpeg、pngquant 处理过,或本身就是低质量导出)会被丢弃并按你设定的质量重写。常见于把一张已经压得很狠的 JPG 再用高质量导出,或者把 JPG 转成 PNG。遇到这种情况把质量调低,或换成 WebP 输出即可。
「适配」能保证一定不超过我填的大小吗?
会尽力但不绝对。JPG 和 WebP 会先在质量 1 到 100 之间二分搜索;如果即使质量 1 也超限,还会继续按比例缩小分辨率,并提示缩到了大约多少。PNG 则直接二分搜索分辨率,最低到 10%。如果最终仍然超过上限,会明确提示你改用 WebP 或 JPG,或者放宽上限。
支持多大的图片,可以批量压缩吗?
单张上限 20MB,超过会提示;同一时间只处理一张图,暂不支持批量。压缩全部占用你本机的 CPU 和内存,几千万像素的大图在编码时页面可能出现一两秒的等待,属于正常现象。需要处理一整批图时,建议逐张换图,参数会保留不用重设。
压缩会丢掉 EXIF 信息或透明背景吗?
EXIF 会丢。canvas 重绘只保留像素,拍摄时间、机型、GPS 等元数据都不会写进输出文件——如果你正好想去掉这些隐私信息,这是个附带好处;如果需要保留,就不要用本工具。透明背景在输出 PNG 或 WebP 时保留,输出 JPG 时会被填成白色,因为 JPG 本身没有透明通道。

图片分组的其它工具

  • 二维码二维码生成与图片识别
  • Base64 图片图片与 Base64 互转
  • 图片裁剪浏览器端裁剪图片,支持比例锁定与下载
  • 加水印为图片添加文字水印,支持平铺与位置
  • ICO 图标JPG / PNG / GIF / WebP 转多尺寸 ICO 图标,浏览器本地生成 favicon
  • 取色器图片取色与屏幕吸管,HEX / RGB / HSL 双向互转