我从命令行使用 ImageMagick 来调整图像大小:
convert -size 320x240 image.jpg
但是,我不知道如何确定最终图像的大小。由于这是比例图像比例,因此新图像的尺寸很可能为 100x240 或 320x90(而不是 320x240)。
我可以调用“转换”命令来调整图像大小并返回新的图像尺寸吗?例如伪代码:
convert -size 320x240 -return_new_image_dimension image.jpg // returns the new resized image dimensions
最佳答案
-ping
选项
还建议使用此选项,因为它可以防止将整个图像加载到内存中,如: https://stackoverflow.com/a/22393926/895245 中所述。 :
identify -ping -format '%w %h' image.jpg
男人识别
说:
-ping efficiently determine image attributes
例如,我们可以使用Wikimedia's "Large image" category上出现的一些巨大图像来测试它。例如这个ultra high resolution image of Van Gogh's Starry Night维基媒体声称尺寸为 29,696 × 29,696 像素,文件大小:175.67 MB:
wget -O image.jpg https://upload.wikimedia.org/wikipedia/commons/e/e8/Van_Gogh_-_Starry_Night_-_Google_Art_Project-x0-y0.jpg
time identify -ping -format '%w %h' image.jpg
time identify -format '%w %h' image.jpg
但是我观察到 -ping
至少在这种情况下在时间上没有任何区别,也许它只对其他图像格式重要?
在 ImageMagick 6.9.10、Ubuntu 20.04 上测试。
关于image - ImageMagick可以返回图像大小吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1555509/