ImageMagick - сделать цвет полупрозрачным - PullRequest
0 голосов
/ 15 января 2019

Я пытаюсь наложить изображение1 поверх изображения2. Я хочу сделать цвет в image1 полупрозрачным. До сих пор я мог только наложить image1 поверх image2, используя

composite -gravity north image2.png image1.png image3.png

Как сделать цвет (в данном случае серым) в image1 полупрозрачным перед наложением его на image2?

Я использую:

Version: ImageMagick 7.0.8-23 Q16 x86_64 2019-01-09 

Thnx

1 Ответ

0 голосов
/ 15 января 2019

Сначала создадим оверлей (image2.png), с 3 постепенно более светлыми оттенками серого, начиная с 80/255 слева, 128/255 в середине и 200/255 справа:

convert -size 200x438 xc:"gray(80,80,80)" xc:gray xc:"gray(200,200,200)" +append image2.png

enter image description here

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

enter image description here

Теперь мы можем преобразовать точно средне-серый в полупрозрачный средне-серый и наложить так:

convert bean.jpg \( image2.png -fill "rgba(128,128,128,0.5)" -opaque gray \) -composite result.png

enter image description here

Или, если мы хотим повлиять и на серый (80), мы можем добавить некоторый пуш:

convert bean.jpg \( image2.png -fill "rgba(128,128,128,0.5)" -fuzz 20% -opaque gray \) -composite result.png

enter image description here


Обратите внимание, что в версии 7 ImageMagick команды изменились:

Version 6       | Version 7
=================================
identify        | magick identify
convert         | magick
mogrify         | magick mogrify
composite       | magick composite
montage         | magick montage
compare         | magick compare
animate         | magick animate
stream          | magick stream

Порядок параметров также более строгий, в пользу:

magick [settings] INPUT [settings] [operators] OUTPUT

над

convert [settings] [operators] INPUT [settings] [operators] OUTPUT

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

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