Как создать водяной знак с помощью imagemagick - PullRequest
1 голос
/ 25 августа 2010

Я пытаюсь создать водяной знак с помощью ImageMagick, однако, руководства по наложению слоев довольно устрашающие. В основном у меня будет одно базовое изображение, скажем, «base.jgp», а наложенное изображение - «overlay.jpg». Overlay.jpg будет меньше, чем base.jpg. Какую команду exec я бы запустил, чтобы разместить оверлей по центру поверх base.jpg?

Спасибо!

Ответы [ 3 ]

3 голосов
/ 25 августа 2010
shell_exec("composite -gravity center ./images/watermark_horizontal.png {$this->path} {$this->path}");

Вот и мы

2 голосов
/ 25 августа 2010

Ознакомьтесь с примерами ImageMagick , особенно главой Compositing Images . В нем есть несколько готовых примеров из реальной жизни.

1 голос
/ 01 августа 2016
$image = new Imagick();
$image->readImage("image.jpg");

// Open the watermark
$watermark = new Imagick();
$watermark->readImage("watermark.png");

// Overlay the watermark on the original image
$image->compositeImage($watermark, imagick::COMPOSITE_OVER, 0, 0);

// send the result to the browser
header("Content-Type: image/" . $image->getImageFormat());
...