ImageMagick裁剪保持高度

3

我正在尝试使用以下命令行按高度裁剪图像:

convert 1053257.png -gravity South -crop 2910x3312+0+0 -background black +repage image-cropped-top.png

生成的图片裁剪不正确,运行命令后的尺寸为2791 x 3312。宽度也被裁剪了! 有人能帮忙解决吗?
2个回答

6
一般格式为:
convert input.jpg -crop WIDTHxHEIGHT+0+0 result.jpg

如果您想将图像裁剪到特定的宽度,比如1024,而不影响高度:
convert image.jpg -crop 1024x+0+0 result.jpg

如果您想将图片裁剪到特定的高度,比如768,保持宽度不变 - 请注意高度在x之后:
convert image.jpg -crop x768+0+0 result.jpg

如果您想将图片裁剪到最大宽度和高度,例如1024宽 x 768高,而不破坏其纵横比
convert image.jpg -crop 1024x768+0+0 result.jpg

如果您想将图片裁剪为特定的宽度和高度,例如1024像素宽和768像素高,并且可以接受明显的扭曲:
convert image.jpg -crop 1024x768+0+0\! result.jpg

感叹号可以理解为"就是这样!"。请注意,在Linux/Unix/macOS上需要使用反斜杠来转义感叹号,但在Windows上不需要。


请注意,如果您将裁剪后的图像保存为PNG格式,则可能希望在此之后重置页面,以便该图像"忘记"它曾经是较大图像的一部分:

convert input.jpg -crop 1024x768+0+0 +repage result.png

3

使用ImageMagick,在进行裁剪之前,如果您对图像进行了“-trim”操作,则可能会出现此类问题。当您对图像进行“-trim”操作时,它仍然可以记住修剪之前的原始页面尺寸,然后在进行裁剪时,它将使用这些页面尺寸作为裁剪的起始参考。您可能需要在裁剪之前进行“+repage”,以获得新的分页信息。尝试类似于以下内容的操作...

convert 1053257.png -gravity South +repage -crop 2910x3312+0+0 +repage image-cropped-top.png

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接