如何使用 imagemagick 创建水印

发布于 2024-09-15 14:11:23 字数 160 浏览 11 评论 0原文

我正在尝试使用 ImageMagick 创建水印,但是分层指南非常令人畏惧。基本上,我将有一个基本图像“base.jgp”和一个覆盖图像“overlay.jpg”。 Overlay.jpg 将小于 base.jpg。我将运行哪个执行命令来将覆盖层置于 base.jpg 顶部的中心?

谢谢!

I'm trying to create a watermark with ImageMagick however, the guides on layering are pretty daunting. Basically I'll have one base image say "base.jgp" and an overlay image say "overlay.jpg". Overlay.jpg would be smaller than base.jpg. Which exec command would I run to place overlay centered on top of base.jpg?

Thanks!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

夏末染殇 2024-09-22 14:11:23
shell_exec("composite -gravity center ./images/watermark_horizontal.png {$this->path} {$this->path}");

开始了

shell_exec("composite -gravity center ./images/watermark_horizontal.png {$this->path} {$this->path}");

Here we go

迷途知返 2024-09-22 14:11:23

查看 ImageMagick 示例,尤其是 合成图像章节。它有许多现成的现实示例。

Check out ImageMagick examples, especially the Compositing Images chapter. It has a number of ready-made real-world examples.

胡大本事 2024-09-22 14:11:23
$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());
$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());
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文