Изменение размера холста изображений svg в командной строке


У меня есть куча svg-изображений (1.svg 2.формат SVG ...) и я хотел бы центрировать их и изменять размер холста до одинакового значения для всех из них. Предположим, что изображение 1.svg имеет w. 600 и h. 800 и 2.svg имеет w. 1000 и h. 400. Я хотел бы установить холст как для изображений 1000x800, так и для изображений центра. В результате изображения не будут изменены, но они будут иметь дополнительное пространство по бокам -> 1.svg по-прежнему будет 600x800, но в холсте размером 1000x800 и 2.svg будет 1000x400, но в холсте размером 1000x800. Можно ли это сделать в командной строке? Использование inkscape, imagemagick и др.?

Заранее спасибо!

1 2

1 ответ:

Вам нужна опция -extent для ImageMagick, например:

convert 1.svg -gravity center -background yellow -extent 1000x800 result.png

Итак, давайте сделаем несколько изображений:

convert -size 600x800! xc:red 1.png
convert 1.png -gravity center -background yellow -extent 1000x800 result.png

Введите описание изображения здесь

Или наоборот:

convert -size 1000x400! xc:red 2.png
convert 2.png -gravity center -background blue -extent 1000x800 result.png

Введите описание изображения здесь