我有一批需要压缩的图片。数量有数百张,所以我想使用 CLI 工具。
这些图像具有以下特点。
$ identify 100.jpg
100.jpg JPEG 639x426 639x426+0+0 8-bit sRGB 319KB
如果我使用 GIMP 调整它们的大小并使用这些设置导出
我得到了一个 20kB 的质量非常可接受的文件。
$ identify c.jpg
c.jpg JPEG 400x267 400x267+0+0 8-bit sRGB 20KB
但是,如果我使用 Imagemagick 的转换来调整其大小,如下所示
$ convert 100.jpg -quality 50% -resize 400x267 c_im.jpg
我得到了一个更大的文件,但质量并没有明显改善。
$ identify c_im.jpg
c_im.jpg JPEG 400x267 400x267+0+0 8-bit sRGB 86.6KB
即使我进一步降低质量或尺寸,我也无法获得与 GIMP 生成的一样小的文件,除非我做得太差以至于图像变得无法辨认。
即使我在 GIMP 中勾选 EXIF 和缩略图框,大小也只会增加到约 43kB。
有没有办法使用 CLI 工具或以某种自动化方式获取 GIMP 的压缩级别?
答案1
我终于找到了一个非常有用的帖子这里
我使用的选项如下:
convert 100.jpg -strip -gaussian-blur 0.05 -quality 50% -resize 400x267 c_im.jpg
选项strip
才是关键。从 85kB 降到 16kB,就这样。显然它只会删除评论和个人资料,而这些我并不需要。
模糊会导致尺寸略有缩小,但清晰度的损失是明显的,因此请自行判断使用。
$ identify c_im.jpg
c_im.jpg JPEG 400x267 400x267+0+0 8-bit sRGB 15.7KB