Imagemagick 使用Image Magick转换图像并显示结果

Imagemagick 使用Image Magick转换图像并显示结果,imagemagick,report,imagemagick-convert,Imagemagick,Report,Imagemagick Convert,我正在使用图像魔法处理图像。以下是我使用的命令: convert source.png -resize 1200 -quality 75 result.jpg 它按预期工作。我不想知道是否有一种方法可以报告显示压缩量的转换结果(以百分比或千字节表示,或仅通过显示原始图像和转换图像的大小) 我尝试了-monitor开关,但它只在转换期间显示一种进度报告 (我正在使用Linux)您使用的质量设置告诉ImageMagick要压缩多少图像。或者,您可以计算输出文件大小与输入大小的比率。或者是-qual

我正在使用图像魔法处理图像。以下是我使用的命令:

convert source.png -resize 1200 -quality 75 result.jpg
它按预期工作。我不想知道是否有一种方法可以报告显示压缩量的转换结果(以百分比或千字节表示,或仅通过显示原始图像和转换图像的大小)

我尝试了
-monitor
开关,但它只在转换期间显示一种进度报告


(我正在使用Linux)

您使用的质量设置告诉ImageMagick要压缩多少图像。或者,您可以计算输出文件大小与输入大小的比率。或者是-quality为75时的输出文件大小与使用-quality为100时的输出文件大小之比,即使-quality为100时仍会压缩一些文件

您可以通过以下方式获得图像的大小:

convert image -precision 16 -format "%b\n" info:
设置较大的精度将强制结果以字节为单位,但必须从末尾删除B字符。因此,您可以执行以下操作以获取输出/输入文件大小的百分比:

outsize=$(convert output -precision 16 -format "%b\n" info: | sed 's/B//g')
insize=$(convert input -precision 16 -format "%b\n" info: | sed 's/B//g')
percent_size=$(convert xc: -format "%[fx:100*$outsize/$insize]\n" info:)