Imagemagick创建图像并将图像放置在最大尺寸的内部

Imagemagick创建图像并将图像放置在最大尺寸的内部,imagemagick,imagemagick-convert,Imagemagick,Imagemagick Convert,我已经修剪了.png,需要将它们放在画布上(3000x3000像素)但最大尺寸为 convert -size 3000x30000 xc:transparent test.png -gravity south -composite -size 2200x2200 result.png 我的代码现在可以工作了,但是图像的大小已经关闭。我的画布按预期为3000x3000px,但放置在画布上的图像大小不正确。它的最大宽度/高度应为2200px,如果它们在高度中太小,则可以按比例放大 convert

我已经修剪了.png,需要将它们放在画布上(3000x3000像素)但最大尺寸为

convert -size 3000x30000 xc:transparent test.png -gravity south -composite -size 2200x2200 result.png
我的代码现在可以工作了,但是图像的大小已经关闭。我的画布按预期为3000x3000px,但放置在画布上的图像大小不正确。它的最大宽度/高度应为2200px,如果它们在高度中太小,则可以按比例放大

convert -size 3000x30000 xc:transparent \( test.png -resize 2200x2200 \) -gravity south -composite result.png

Windows语法:

convert -size 3000x30000 xc:transparent ( test.png -resize 2200x2200 ) -gravity south -composite result.png

Unix语法:

convert -size 3000x30000 xc:transparent \( test.png -resize 2200x2200 \) -gravity south -composite result.png

Windows语法:

convert -size 3000x30000 xc:transparent ( test.png -resize 2200x2200 ) -gravity south -composite result.png


此ImageMagick命令将在保持其外观的同时将输入图像的长边大小调整为2200像素,然后创建3000x3000透明画布,然后交换输入图像和画布,最后将调整大小的输入图像合成到透明画布上

convert input.png -resize 2200x2200 \
   -size 3000x3000 xc:none +swap -gravity south -composite result.png

对于Windows,将连续的反斜杠“\”行更改为插入符号“^”。对于ImageMagick v7,请使用“magick”而不是“convert”。

此ImageMagick命令将在保持其外观的同时将输入图像的长边调整为2200像素,然后创建3000x3000透明画布,然后交换输入图像和画布,并通过将调整大小的输入图像合成到透明画布上来完成

convert input.png -resize 2200x2200 \
   -size 3000x3000 xc:none +swap -gravity south -composite result.png
对于Windows,将连续的反斜杠“\”行更改为插入符号“^”。对于ImageMagick v7,请使用“magick”而不是“convert”。

为什么不使用-extent

convert input.jpg -resize 2200x2200 -background none -gravity south -extent 3000x3000 result.png
为什么不使用扩展

convert input.jpg -resize 2200x2200 -background none -gravity south -extent 3000x3000 result.png

使用此语法,我在mac os x mojave上遇到以下错误:
convert-size 1400x1400 xc:transparent\(/trimmed/p-001.png-resize 1000x1000\)-gravity-south-composite/composite/output.png
convert:无法打开图像'(./trimmed/p-001.png):没有这样的文件或目录@error/blob.c/OpenBlob/3497。
转换:需要图像序列'-composite'@error/mogrify.c/mogrifyimagerist/7986。
转换:未定义图像。/composited/output.png'@error/convert.c/ConvertImageCommand/3273。
我也尝试了完整路径,但得到了same error该错误似乎是因为没有用反斜杠转义括号,如\(…\)。转义括号两边都需要空格。使用此语法,我在mac os x mojave上遇到此错误:
convert-size 1400x1400 xc:transparent \(./trimmed/p-001.png-resize 1000x1000\)-gravity-south-composite./composited/output.png
转换:无法打开图像'(./trimmed/p-001.png):没有这样的文件或目录@error/blob.c/OpenBlob/3497。
转换:需要图像序列'-composite'@error/mogrify.c/mogrifyimagerist/7986。
转换:未定义图像。/composited/output.png'@error/convert.c/ConvertImageCommand/3273。
我也尝试了完整路径,但得到了same error该错误似乎是由于未使用像\(…\)这样的反斜杠转义圆括号造成的。转义圆括号两侧都需要空格。