Imagick:: setimage不透明度()
文章描述:
在使用imagick报错Fatal error: Uncaught Error: Call to undefined method Imagick::setImageOpacity() in怎么解决?
代码:
//打开一张图片
$im = new Imagick('images/sdmk.png');
//新建图层,使用颜色`#000`填充后,不透明度设为`50%`
$layer = new Imagick();
$layer->newImage($im->getImageWidth(), $im->getImageHeight(), '#000');
//$layer->setImageOpacity (0.5);
$layer->setImageAlpha(0.5);
//叠加到原图上,图层混合模式为`柔光`
$im->compositeImage($layer, Imagick::COMPOSITE_SOFTLIGHT, 0, 0);
//新建图层,使用颜色`#000699`填充后,不透明设置为`48%`
$layer = new Imagick();
$layer->newImage($im->getImageWidth(), $im->getImageHeight(), '#000699');
//$layer->setImageOpacity (0.48);
$layer->setImageAlpha(0.48);
//叠加到原图上,图层混合模式为`排除`
$im->compositeImage($layer, Imagick::COMPOSITE_EXCLUSION, 0, 0);
//完成!
$im->writeImage('000.jpg');
在运行的时候报错“Fatal error: Uncaught Error: Call to undefined method Imagick::setImageOpacity() in”
翻译后的意思是“调用未定义的方法Imagick:: setimage不透明度()”
需要把把setImageOpacity 换成 setImageAlpha
发布时间:2021/07/15
发表评论