Imagemagick произвольный размер / соотношение градиента - PullRequest
0 голосов
/ 19 октября 2018

Можно ли применить наложение с плавным диагональным градиентом из левого нижнего угла в правый верхний угол с сохранением исходных цветов , как показано ниже?

enter image description here

Может звучать как простая задача, но фактический размер изображения ранее не был известен.

1 Ответ

0 голосов
/ 19 октября 2018

Возможно, это то, что вы хотите.Используя Imagemagick 6, я создаю диагональный градиент с синим в нижнем левом углу и красным в верхнем правом углу, а затем смешиваю 20% / 80% с оригиналом с градиентом.

Imagemagick автоматически получает размеры (клонированного / скопированного) изображения из% w и% h, используя барицентрический синтаксис -sparse-color для создания градиента.См. https://imagemagick.org/Usage/canvas/#diagonal_gradients

ввод: enter image description here

convert input.jpg \
\( +clone -sparse-color barycentric '0,%h blue  %w,0 red' +write gradient.jpg \) \
-define compose:args=20,80 -compose blend -composite \
result.jpg


enter image description here

Выше я сохранил изображение градиента, чтобы показать, что оно было создано правильно:

enter image description here

В качестве альтернативы, вы можете установить альфаканал градиента до 20% и использовать композит над.

convert input.jpg \
\( +clone -sparse-color barycentric '0,%h blue  %w,0 red' -alpha set -channel alpha -evaluate set 20% +channel \) \
-compose over -composite \
result2.jpg


enter image description here

...