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

Bas*_*asj 11 image imagemagick image-resizing

命令

imageconvert.exe in.jpg -resize 800x600 out.jpg
Run Code Online (Sandbox Code Playgroud)

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

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

Mar*_*ell 18

我认为你需要以下>标志resize:

convert -size 300x200 xc:red   small.png
convert -size 1000x500 xc:blue large.png
Run Code Online (Sandbox Code Playgroud)

现在将它们转换为800x600,没有标志:

convert small.png -resize 800x600 a.png   # 800x533
convert large.png -resize 800x600 b.png   # 800x400
Run Code Online (Sandbox Code Playgroud)

现在有了旗帜:

convert small.png -resize 800x600\> a.png # 300x200
convert large.png -resize 800x600\> b.png # 800x400
Run Code Online (Sandbox Code Playgroud)

您可能需要一个插入符号(^)而不是Windows上的反斜杠.

各种标志在此处的文档中进行了说明.感谢@ user1133275的建议.