【问题标题】:ImageMagick Resize Images Proportionately in Landscape & Portrait ModeImageMagick 在横向和纵向模式下按比例调整图像大小
【发布时间】:2020-11-24 07:51:08
【问题描述】:

我正在尝试使用 ImageMagick 降低大量图像的分辨率。照片的原始尺寸为 5312 x 2988 像素。新尺寸应为 2000 x 1125 像素。

这是我正在使用的命令:

mogrify -path "C:\Users\Joe\Desktop\img\new" -resize 2000x1125 -auto-orient -format jpg -quality 75 "C:\Users\Joe\Desktop\img\*.jpg"

它适用于横向模式的图像。问题在于处于纵向模式的图像,分辨率为 2988 x 5312 像素。当我运行上述命令时,它们的结果大小是 633 x 1125 像素而不是 1125 x 2000。

如果原始图像为 5312 x 2988,我可以运行哪个命令来生成 2000 x 1125(横向)的图像。或者,如果原始图像是 2988 x 5312(纵向),则生成的图像是 1125 x 2000 像素?它应该是一个命令,因为我在横向和纵向模式的文件夹中都有大量图像。

基本上,最大尺寸应为 2000。如果照片是横向的,则宽度应为 2000 像素,高度应按比例缩小。如果照片为纵向模式,则高度应为 2000 像素。

【问题讨论】:

  • 我想我明白了。在单独的地方复制一份,然后尝试简单地使用-resize 2000,这样最长的边就会出现在 2000 处。
  • 就是这样!如果您想提交您的回复作为答案,我会接受。另请注意:我需要在 -resize 之后移动 -auto-orient 标志,以便无论方向模式如何都会发生调整大小。
  • 很高兴它对你有用。请自己写下来,因为您已经测试并检查了所有内容 - 然后您可以接受自己的答案并获得积分。

标签: imagemagick imagemagick-convert mogrify


【解决方案1】:

答案,正如 Mark 所建议的那样,最终使用 -resize 标志,只有一个参数,例如:-resize 2000。当只指定一个参数时,最长边将为 2000(另一个维度将自动缩放并按比例)。

需要注意的是,如果您在同一命令中使用 -auto-orient 标志,请确保将 -auto-orient 放置在 -resize 之后。这样,ImageMagick 在调整大小时会忽略图像方向。

mogrify -path "C:\Users\Joe\Desktop\Folder\New" -resize 2000 -format jpg -quality 75 -auto-orient "C:\Users\Joe\Desktop\Folder\*.jpg"

在 -auto-orient 之前调用 -resize 的键。

【讨论】:

    猜你喜欢
    • 2011-09-05
    • 2014-10-22
    • 2011-08-07
    • 1970-01-01
    • 1970-01-01
    • 2013-04-05
    • 2011-04-27
    • 2012-02-24
    • 2013-06-09
    相关资源
    最近更新 更多