【问题标题】:php imagick setGravity function doesn't work with compositeImage() functionphp imagick setGravity 函数不适用于 CompositeImage() 函数
【发布时间】:2012-08-08 22:08:36
【问题描述】:

我正在为一个项目使用 php Imagick 类

我尝试合成一张改变图像重力的图像

我的意思是,我想将目标图像合成到中间或顶部中心

我用

....
$imageOrg->setGravity(imagick::GRAVITY_CENTER); //I wrote this for an example, position will be set by the visitor
$imageOrg->compositeImage($over, Imagick::COMPOSITE_DEFAULT, 0, 0);
....

但是 setGravity() 或 setImageGravity() 函数都不起作用。

请帮忙!

【问题讨论】:

标签: php imagemagick imagick gravity


【解决方案1】:
$imageOrg->compositeImage($over, Imagick::COMPOSITE_DEFAULT, (((($imageOrg->getImageWidth()) - ($over->getImageWidth())))/2), (((($imageOrg->getImageHeight()) - ($over->getImageHeight())))/2));

基本上,您所做的是将图像的左偏移设置为容器的宽度,减去合成图像的宽度,再除以二,这将使其偏移到足以水平居中。然后你对高度做同样的事情,它垂直居中。

我遇到了相同类型的问题,我认为重力设置仅适用于绘图上下文,即:文本、注释

【讨论】:

    猜你喜欢
    • 2012-05-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-20
    • 2011-09-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多