使用最大宽度/高度的ImageMagick调整大小

使用最大宽度/高度的ImageMagick调整大小,image,imagemagick,image-resizing,Image,Imagemagick,Image Resizing,命令 imageconvert.exe in.jpg -resize 800x600 out.jpg 调整图像大小,使其保持原始比例,最大宽度为800,最大高度为600像素。但是如果图像的宽度和高度都较小(例如300x200图像),它将被放大到800或600,我不希望这样 如何保持相同的大小调整(当宽度>800或高度>600时),但使宽度和高度都较小的图像(例如300x200图像)不受影响?我认为您需要大小调整上的标志。让我们创建一些图像(一个红色300x200,另一个蓝色1000x500):

命令

imageconvert.exe in.jpg -resize 800x600 out.jpg
调整图像大小,使其保持原始比例,最大宽度为800,最大高度为600像素。但是如果图像的宽度和高度都较小(例如300x200图像),它将被放大到800或600,我不希望这样


如何保持相同的大小调整(当宽度>800或高度>600时),但使宽度和高度都较小的图像(例如300x200图像)不受影响?

我认为您需要
大小调整
上的
标志。让我们创建一些图像(一个红色300x200,另一个蓝色1000x500):

现在将它们都转换为800x600,不带任何标志:

convert small.png -resize 800x600 a.png   # 800x533
convert large.png -resize 800x600 b.png   # 800x400
现在是旗帜:

convert small.png -resize 800x600\> a.png # 300x200
convert large.png -resize 800x600\> b.png # 800x400
在Windows上,您可能需要插入符号(
^
)而不是反斜杠


文档中解释了各种标志。感谢@user1133275的建议。

的确如此!这是Windows上的
-resize 800x600^>
。@user1133275非常感谢您的有用建议-我已经更新了我的答案。
convert small.png -resize 800x600\> a.png # 300x200
convert large.png -resize 800x600\> b.png # 800x400