找到了比tinypng更好的图片压缩网站

Squoosh Google开源的,速度快如火箭,质量好,唯一缺点就是不能批量压缩。

在国内图片压缩更实用的是指定压缩后的大小 :rofl: 不然压缩不到网站要求的大小难受死。

2 个赞

不能指定压缩大小,但是可以拖动控制压缩大小,7兆的图片最低可以压缩成14kb(黑白),五六十kb就是彩色的,满足绝大部分要求

大多数图片压缩工具都有一个质量选项,把质量调低,图片就会变小。

怎么会压缩不到指定的大小呢?

:face_with_symbols_on_mouth: 之前遇到过好几次,最低质量还是比网站要求大一点点,换好几个工具网站都不行。

直到找到这个能直接指定大小的工具,再也不用顾忌压缩出来的图片究竟多大了。

能直接显示压缩后的大小倒也不错:+1:

TinyPNG其实挺不错的,免费,而且基本够用

就在线网站来说,我觉得够了,毕竟压缩率24.5%跟压缩率23.8%,我感觉不出有什么区别。

但是,实际干活的时候,我还是用自己写的工具,直接把文件夹拖拽进去,程序自动调用pngquant,zopflipng,批量处理,而且把压缩率连90%都不到的抛弃,直接使用原文件。

定制的需求只能使用定制的软件。

1 个赞

Squoosh CLI 的完整调用入口、支持参数规范及多文件/通配符批量兼容机制。采用官方发布的 @squoosh/cli 规范作为标准参考。

1. CLI 入口与调用方式

  • 独立免安装执行:npx @squoosh/cli [options] <files...>
  • 全局安装执行:npm i -g @squoosh/cli → squoosh-cli [options] <files...>

2. 多文件与批量处理兼容性

  • 支持多参数平铺:npx @squoosh/cli --webp "{}" img1.png img2.jpg img3.png
  • 支持通配符(Globbing):npx @squoosh/cli -d dist --webp "{}" "src/**/*.{png,jpg}"
  • 并发机制:CLI 内部通过 Worker 线程池并发处理多张图片,提升批量转换吞吐量。

3. 支持参数清单

参数分类 参数项 默认值 作用与示例
输出控制 -d, --output-dir <dir> . 指定压缩后文件的输出目录
-s, --suffix <suffix> "" 给生成文件名附加后缀(如 -min)
预处理 --resize [config] 禁用 图像尺寸调整,如 '{"width": 800}'
--quant [config] 禁用 颜色量化(调色板压缩),如 '{"numColors": 128}'
--rotate [config] 禁用 图像旋转,如 '{"numRotations": 1}'
格式编解码 --mozjpeg [config] 自动配置 导出 .jpg,如 '{"quality": 75}' 或 'auto'
--webp [config] 自动配置 导出 .webp,如 '{"quality": 75, "lossless": 0}'
--avif [config] 自动配置 导出 .avif,如 '{"cqLevel": 33}'
--oxipng [config] 自动配置 导出 .png,如 '{"level": 2}'
--jxl [config] 自动配置 导出 .jxl (JPEG-XL)
--wp2 [config] 自动配置 导出 .wp2 (WebP2)
自动优化 --max-optimizer-rounds 6 自动参数优化的最大探测轮数
--optimizer-butteraugli-target 1.4 自动优化画质目标距离(基于 Butteraugli 视觉模型)

4. 典型批量命令示例

# 1. 批量将 images 目录下的 png/jpg 转换为 webp,输出至 output 目录
npx @squoosh/cli -d ./output --webp '{"quality":80}' ./images/*.{jpg,png}

# 2. 批量将图片缩放到宽度 1200px 并压成 AVIF 格式
npx @squoosh/cli -d ./dist --resize '{"width":1200}' --avif '{"cqLevel":30}' ./photos/*

仅供参考.

不得不说有点火星了,我用了很多年。

甚至我就因为他做了一个批量的工具

1 个赞