ImageMagick:压缩jpeg时指定图片文件大小( ImageMagick 6.9.12)

发布时间 2023-07-27 15:01:49作者: 刘宏缔的架构森林

一,官方文档地址:

https://www.imagemagick.org/Usage/formats/#jpg_write

如图:

二,从命令行执行

1,执行命令

只指定目标文件大小

[lhdop@blog avif]$ convert -define jpeg:extent=160k 03_215649_3.jpg 160k.jpg

指定目标文件大小,同时指定宽高

[lhdop@blog avif]$ convert -define jpeg:extent=160k 03_215649_3.jpg -resize 1100x1100 1602k.jpg

说明:

-define jpeg:extent=MAX_SIZE_IN_KB

用来指定文件的最大size值

在6.5.8-2版本后可用

2,查看图片大小:

[lhdop@blog avif]$ ll
total 4332
-rw-rw-r-- 1 lhdop lhdop 2523619 Jul 25 16:03 03_215649_3.jpg
-rw-rw-r-- 1 lhdop lhdop  158142 Jul 25 16:06 1602k.jpg
-rw-rw-r-- 1 lhdop lhdop  158809 Jul 25 16:04 160k.jpg

显示可读的文件大小

[lhdop@blog avif]$ ll -h
total 4.3M
-rw-rw-r-- 1 lhdop lhdop 2.5M Jul 25 16:03 03_215649_3.jpg
-rw-rw-r-- 1 lhdop lhdop 155K Jul 25 16:06 1602k.jpg
-rw-rw-r-- 1 lhdop lhdop 156K Jul 25 16:04 160k.jpg

说明:刘宏缔的架构森林—专注it技术的博客,
网站:https://blog.imgtouch.com
原文: https://blog.imgtouch.com/index.php/2023/07/25/imagemagick-ya-suo-jpeg-shi-zhi-ding-tu-pian-wen-jian-da-xiao-imagemagick-6-9-12/
代码: https://github.com/liuhongdi/ 或 https://gitee.com/liuhongdi
说明:作者:刘宏缔 邮箱: 371125307@qq.com

三,查看图片的质量

原图:

原图的信息:

原图的质量:

[lhdop@blog avif]$ identify -verbose 03_215649_3.jpg | grep -i quality
  Quality: 97

文件缩小后的图片质量受到影响:160k.jpg:

压缩后的图片质量:

[lhdop@blog avif]$ identify -verbose 160k.jpg | grep -i quality
  Quality: 5

太差了,所以压缩时如果只压文件大小会导致文件质量太差,

应该同时缩小图片的宽高

四,查看ImageMagick的版本:

[lhdop@blog avif]$ convert --version
Version: ImageMagick 6.9.12-64 Q16 x86_64 17467 https://legacy.imagemagick.org
Copyright: (C) 1999 ImageMagick Studio LLC
License: https://imagemagick.org/script/license.php
Features: Cipher DPC Modules OpenMP(4.5)
Delegates (built-in): bzlib cairo djvu fontconfig freetype gslib gvc jbig jng jp2 jpeg lcms ltdl lzma openexr pangocairo png ps raqm raw rsvg tiff webp wmf x xml zlib