Imagemagick создает изображение и помещает изображение внутрь с максимальным размером - PullRequest
1 голос
/ 10 октября 2019

Я обрезал .pngs и мне нужно поместить их на холст (3000x3000 px) НО с максимальным размером.

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

Код, который у меня сейчас работает, но размеризображения выключен. Мой холст имеет размер 3000x3000 пикселей, но изображение на нем не имеет правильного размера. Он должен иметь максимальную ширину / высоту 2200 пикселей и, если возможно, увеличиваться, если они малы до высота .

Ответы [ 3 ]

1 голос
/ 10 октября 2019

Эта команда ImageMagick изменит размер входного изображения до 2200 пикселей на более длинной стороне, сохранив его аспект, затем создаст прозрачный холст 3000x3000, затем поменяет местами входное изображение и холст и завершит компоновку исходного изображения с измененным размером на прозрачныйcanvas ...

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

Для Windows измените эту обратную косую черту "\" на каретку "^". Для ImageMagick v7 используйте «magick» вместо «convert».

1 голос
/ 10 октября 2019

Почему бы не использовать -extent?

convert input.jpg -resize 2200x2200 -background none -gravity south -extent 3000x3000 result.png
1 голос
/ 10 октября 2019

Синтаксис 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


Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...