使用ImageMagick调整大小,然后从命令行裁剪图像

使用ImageMagick调整大小,然后从命令行裁剪图像,imagemagick,Imagemagick,我有一个jpg图像,我想按如下方式调整其大小: 保持图像的纵横比不变,将其大小调整为尽可能接近640x360,而不使新图像的任何部分保持“空白”/“空白”。也就是说,如果在调整大小后,它变为800x360或640x420是可以的,但如果它是400x360(因为400小于640)或640x200(因为200小于360),则不可以 在此之后,我需要将上述调整大小的图像居中裁剪为16:9的比例 使用imagemagick可以实现这一点的最简单的shell命令集是什么 我两个都试过了 convert'o

我有一个jpg图像,我想按如下方式调整其大小:

  • 保持图像的纵横比不变,将其大小调整为尽可能接近640x360,而不使新图像的任何部分保持“空白”/“空白”。也就是说,如果在调整大小后,它变为800x360或640x420是可以的,但如果它是400x360(因为400小于640)或640x200(因为200小于360),则不可以

  • 在此之后,我需要将上述调整大小的图像居中裁剪为16:9的比例

  • 使用imagemagick可以实现这一点的最简单的shell命令集是什么

    我两个都试过了

  • convert'orig_image.jpg'-调整640x360-重心-裁剪640x360+0+0'已更改的_image.jpg'
  • convert'orig_image.jpg'-调整640x360的大小-重心-裁剪640x360+0+0+repage'changed_image.jpg'

  • 但都不管用
    -resize 640x360
    正在调整图像大小,但不符合我的上述要求。也就是说,
    2448x326
    正在将大小调整为
    270x360
    ,而不是
    640x480

    也许您可以使用以下方法:

    convert orig.jpg \
            -resize 640x360^ \
            -gravity Center \
            -extent 640x360
            changed.jpg
    

    其中,
    -resize64x360^
    保留最小纵横比,
    -extent 640x360
    (无
    +0+0
    )尊重
    -gravity Center

    这就是懒惰。您可以自己轻松地查找它:ImageMagick有一个很棒的文档。请参阅“调整大小和缩放示例”和“剪切和边框示例”,我已经读过了。阅读后我理解的是,我需要做
    转换'orig_image.jpg'-调整640x360的大小-重心-裁剪640x360+0+0'更改的_image.jpg'
    。但它不起作用。它只是调整大小,而不是在此之后对调整大小的图像进行裁剪。如果你能帮上忙,请回复。嗯。
    +repage
    有帮助吗<代码>转换“orig_image.jpg”-调整640x360的大小-重心-裁剪640x360+0+0+重新页面“changed_image.jpg”。如果没有,为什么不编辑问题以显示您现在正在做什么(调用
    convert
    ),以及现在发生的事情(包括说明问题的图像)仍然不起作用。我编辑了这个问题。你能添加原始图像和你现在得到的结果吗?(理想情况下是期望的结果之一)