Рисование центрированного прямоугольника с помощью ImageMagick - PullRequest
0 голосов
/ 06 декабря 2018

Используя CLI, я хотел бы добавить черный прямоугольник к изображению, которое 1) центрировано и 2) X пикселей от каждого края.

В принципе, я почти хочу противоположность -border(вместо того, чтобы добавить рамку определенного цвета, я бы хотел оставить X пикселей моего изображения в качестве рамки, а затем закрасить все остальное внутри черного. Кроме того, размер изображения не должен изменяться).

То, что яожидалось, что будет работать, но не было:

convert myImage.jpg -fill black -draw "rectangle 10,10 %[fx:w-20],%[fx:h-20]" outImage.jpg

... для "границы" из 10 пикселей.Похоже, -draw не принимает операторы или атрибуты FX, хотя я где-то нашел (как в Как я могу использовать атрибуты imagemagick в команде рисования прямоугольника? ), что это должно быть в IM 7.x (это то, что я использую).

1 Ответ

0 голосов
/ 06 декабря 2018

В ImageMagick 7 вы должны использовать магию, а не конвертировать.Использование convert сделает вызовы ImageMagick 6, который не поддерживает встроенные операции fx.В ImageMagick 7 сделайте это таким образом для 10-пиксельной границы изображения вокруг черного прямоугольника:

Ввод:

enter image description here

magick lena.jpg -fill black -draw "rectangle 10,10 %[fx:w-11],%[fx:h-11]" result.jpg


enter image description here

Обратите внимание, что следует использовать 11, а не 10, поскольку последний пиксель на изображении - это w-1, h-1.Нумерация начинается с 0. Итак, я исправил свой первоначальный ответ выше.

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