2010-02-22 3 views
18

У меня есть изображение 100x40, и я хочу добавить границу в верхнюю часть изображения высотой 10 пикселей.Добавить border to top of image using imagemagick

Я нашел

convert source.jpg -border 0x10 out.jpg 

, но это добавляет рамку к верхней и нижней части. Есть ли способ добавить его только к вершине?

ответ

19

Использование -splice:

convert source.jpg -splice 0x10 out.jpg

Если вы хотите, чтобы добавить границу только в нижней, используйте -gravity, а также: convert source.jpg -gravity south -splice 0x10 out.jpg

Обратите внимание, что граница будет прозрачным, если вы используете -background, тоже.

Дополнительную информацию см. Также Cutting and Bordering.

4

Использование -extent вместо:

convert source.jpg -gravity south -extent 100x50 out.jpg 

-gravity сказать ему, в каком направлении двигаться исходное изображение.

+0

Я должен был сказать, что я делаю это с партией изображений, которые имеют разные размеры, поэтому я не смог бы узнать, какие размеры передаются в параметр -extent. Сказав это, это очень полезный вариант. – opsb