PHP Imagick compositeImage 设置位置

PHP Imagick compositeImage set position

我使用 Imagick 库进行图像处理。

我正在使用这个功能:https://php.net/manual/ro/imagick.compositeimage.php

例如,如何将第二张图片放在左下角第一张图片的上方?我正在使用此功能在所有图像上方添加水印。但是水印以所有图像为中心。我只是想将它对齐到图像的左下角。

有什么想法吗?谢谢

您需要在合成前设置 Gravity - documentation here

bool Imagick::setGravity ( int $gravity )
imagick::GRAVITY_SOUTHWEST

解决方法是从函数 compositeImage(最后两个参数)编辑宽度和高度。

bool Imagick::compositeImage ( Imagick $composite_object , int $composite , int $x , int $y [ int $channel = Imagick::CHANNEL_ALL ] )

我想 setGravity 可能会有所帮助,但更改发送到 "compositeImage" 的宽度和高度对我来说很有效。