![如何使用 ImageMagick 的转换来重新缩放图像,添加信箱以产生固定大小的结果?](https://linux22.com/image/84588/%E5%A6%82%E4%BD%95%E4%BD%BF%E7%94%A8%20ImageMagick%20%E7%9A%84%E8%BD%AC%E6%8D%A2%E6%9D%A5%E9%87%8D%E6%96%B0%E7%BC%A9%E6%94%BE%E5%9B%BE%E5%83%8F%EF%BC%8C%E6%B7%BB%E5%8A%A0%E4%BF%A1%E7%AE%B1%E4%BB%A5%E4%BA%A7%E7%94%9F%E5%9B%BA%E5%AE%9A%E5%A4%A7%E5%B0%8F%E7%9A%84%E7%BB%93%E6%9E%9C%EF%BC%9F.png)
我有一些任意大小的图像,我想为其生成固定大小的 800x600 缩略图,这些缩略图保持原始图像比例并添加白色信箱以弥补其余空间。我希望信箱尽可能少,这意味着该过程将执行以下操作:
- 选择最大的轴
- 如果 x 最大,则缩放图像(保持比例)以使新的 x 为 800。
- 如果 y 最大,则缩放图像(保持比例)以使新 y 为 600。
- 此时的结果将不是 800x600(除非原始比例恰好是 4:3),因此将结果置于 800x600 矩形的中心并添加白色背景。
我可以完成前 3 个步骤,convert -resize 800x600 $input $output
所以我想我可以使用其他一些 imagemagick 工具将其覆盖在另一张图像的顶部,但如果我可以一次完成它,那就太好了。有人知道这是否可能吗?
答案1
我实际上刚刚弄清楚:它确实需要 800x600 的白色图像来合并,但这很好。
convert ~/white.jpg ~/input.png -resize 800x600 -gravity center -composite ~/output.jpg
如果普遍认为发布问题然后自己回答是浪费时间,那么我很乐意删除该问题。