Создание скриншотов в стиле MacOS с помощью drophadow с помощью Imagemagick - PullRequest
0 голосов
/ 14 марта 2020

Как добавить тень на любое изображение с помощью imagemagick, чтобы создать тот же эффект, что скриншот на MacOS добавляет к снимкам экрана, когда тень снимка экрана имеет значение true?

Я показываю до и после, чтобы прояснить эффект Я ищу.

Source image

Target image

Я пытался определить форму тени на целевой картинке Shadow profile in Target

Ответы [ 2 ]

1 голос
/ 14 марта 2020

Я думаю, что это довольно похоже, но вы можете поиграться с параметрами:

convert screenshot.png \( +clone -background black -shadow 50x50+30+30 \) +swap -background white -layers merge +repage result.png

enter image description here


Здесь я изменяю переведите его в пурпурный цвет и переместите его на желтый фоновый слой, чтобы увидеть эффект:

convert screenshot.png \( +clone -background magenta -shadow 200x50+30+30 \) +swap -background yellow  -layers merge +repage result.png

enter image description here

0 голосов
/ 15 марта 2020

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

# adds the shadow
convert source.png \( +clone -background black -shadow 100x40+0+16 \) \
+swap -background none -layers merge +repage output.png

# adds the additional space like MacOSX
convert output.png -bordercolor none -border 32 target.png

enter image description here

Предостережения:

  1. Заполнение должно быть на 20px меньше сверху и на 20px ниже; это решение не идеально в этом отношении.

  2. Экран OSX dr aws белая рамка вокруг изображения, включая закругленные углы. Я не мог продублировать это.

  3. Тень от снимка экрана osx выглядит более размытой, но я не знаю, как измерить синий цвет и откалибровать решение для этого.

Выделенная тень для отображения формы и размытия

enter image description here

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