作者热门文章
- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我正在为一个项目使用 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() 函数不起作用。
请帮忙!
最佳答案
$imageOrg->compositeImage($over, Imagick::COMPOSITE_DEFAULT, (((($imageOrg->getImageWidth()) - ($over->getImageWidth())))/2), (((($imageOrg->getImageHeight()) - ($over->getImageHeight())))/2));
基本上您所做的是将图像的左偏移设置为容器的宽度,减去合成图像的宽度,除以二,这将使它偏移到足以水平居中。然后你对高度做完全相同的事情,它垂直居中。
我有同样类型的问题,最好我能想到重力设置只适用于绘图上下文,即:文本、注释
关于php imagick setGravity 函数不适用于 compositeImage() 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11921433/
我是一名优秀的程序员,十分优秀!