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

ImageMagick Montage设置300DPI图片尺寸及Letter页面大小问题

问题根本原因
  • montage默认会自动缩放输入图片匹配tile单元格大小,未锁定输入图尺寸的情况下,它会将单张图撑满1/4 Letter页面(Letter尺寸在300DPI下为2550×3300像素,1/4大小约为1275×1650,远大于你需要的750×1050像素,因此出现尺寸超出预期的问题)
  • -density 参数的生效顺序对结果影响极大,你之前将它放在geometry参数之后,仅能给输出文件标注DPI属性,无法实际约束拼合阶段的像素尺寸
  • 单卡像素换算存在偏差:2.5英寸×300DPI=750像素,3.5英寸×300DPI=1050像素,geometry中的+10+10是图片间距参数,不需要折算进单卡像素尺寸里
可用拼合命令及参数说明

以下命令可直接满足你的需求,示例中默认输入4张卡图card1.png~card4.png,输出为打印适配的PDF格式:

montage \
  -density 300 \
  card1.png card2.png card3.png card4.png \
  -tile 2x2 \
  -resize 750x1050^ \
  -gravity center \
  -extent 750x1050 \
  -geometry +10+10 \
  -page Letter \
  print_page.pdf

各参数作用:

  • -density 300 放在所有输入文件之前,指定所有输入素材按300DPI处理,从源头上锁定英寸和像素的换算关系
  • -resize 750x1050^ 强制将所有输入卡图缩放到至少750×1050像素,^符号表示按短边匹配,不会拉伸卡图变形
  • -gravity center + -extent 750x1050:如果输入卡图比例和2.5:3.5不一致,自动裁剪多余部分、居中保留核心内容,保证每张卡的像素尺寸完全符合要求
  • -geometry +10+10 仅保留边距设置,不需要在此处添加尺寸参数,避免和前面的resize/extent规则冲突
  • -page Letter 放在输出文件之前,指定最终页面的打印尺寸为Letter,输出PDF后打印时不会被软件自动缩放

如果你需要输出PNG格式用于打印,在输出文件名前额外添加 -units PixelsPerInch 参数,确保图片元数据里的DPI信息被打印软件正确识别。

结果验证

生成文件后可使用以下命令检查参数是否符合预期:

identify -verbose print_page.pdf | grep -E 'Geometry|Density|Page size'

正常输出应包含以下信息:

  • Density: 300x300
  • 单张卡图Geometry: 750x1050
  • 页面Page size: 612x792 points(Letter标准尺寸,对应2550x3300像素@300DPI)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 07:24:03