You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过ImageMagick的convert命令将横向图片转为纵向并指定像素高度?

解决ImageMagick横向转纵向时精确控制原图位置的问题

当然可以指定精确的像素偏移来控制原图在纵向画布中的位置,不用局限于-gravity的预设选项。

你的当前命令是将原图缩放到1670x760后,扩展为1670x2288的纵向画布,但-gravity只能提供居中、靠上/下等固定位置,要实现像素级精确控制,直接在-extent参数后添加偏移量即可:

convert sample_img.jpg -resize 1670x760 -background white -interlace plane -extent 1670x2288+0+Y vertical_img.jpg

参数解释:

  • 1670x2288是目标纵向画布的尺寸
  • +0+Y是偏移量:
    • +0表示水平方向无偏移(因为原图和画布宽度一致,刚好填满)
    • +Y是原图顶部距离新画布顶部的像素值,你可以根据需求替换成具体数字

示例场景:

  1. 若希望原图顶部距离画布顶部留300像素白边:
    convert sample_img.jpg -resize 1670x760 -background white -interlace plane -extent 1670x2288+0+300 vertical_img.jpg
    
  2. 若希望原图底部距离画布底部留200像素白边:
    先计算Y值:2288 - 760 - 200 = 1328,命令为:
    convert sample_img.jpg -resize 1670x760 -background white -interlace plane -extent 1670x2288+0+1328 vertical_img.jpg
    

这种方式能完全精准控制原图在画布中的垂直位置,满足你指定像素高度的需求。

内容的提问来源于stack exchange,提问作者alessmar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 17:56:06