函数名:Imagick::selectiveBlurImage()
适用版本:Imagick扩展版本需为2.3.0以上
用法:该函数会对图像应用选择性模糊效果,根据给定的半径和标准差参数,对图像的每个像素进行模糊处理。
语法:public Imagick::selectiveBlurImage(float $radius, float $sigma, float $threshold [, int $CHANNEL = Imagick::CHANNEL_ALL ] )
参数:
- $radius: 模糊半径,必须为非负数,数值越大,模糊效果越明显。
- $sigma: 模糊的标准差,必须为非负数,数值越大,模糊效果越明显。
- $threshold: 模糊处理的阈值,控制哪些像素会受到模糊处理的影响,取值范围为0到1之间,数值越大,受影响的像素越少。
- $CHANNEL (可选): 模糊处理的通道,默认为Imagick::CHANNEL_ALL,表示对所有通道进行模糊处理。
返回值:成功时返回 true,失败时返回 false。
示例:
// 创建Imagick对象
$image = new Imagick('image.jpg');
// 应用选择性模糊效果
$radius = 5;
$sigma = 2;
$threshold = 0.5;
$channel = Imagick::CHANNEL_ALL;
$result = $image->selectiveBlurImage($radius, $sigma, $threshold, $channel);
if ($result) {
// 保存处理后的图像
$image->writeImage('blurred_image.jpg');
echo '图像处理成功!';
} else {
echo '图像处理失败!';
}
// 销毁Imagick对象
$image->destroy();
以上示例中,我们首先创建了一个Imagick对象,然后使用selectiveBlurImage()函数对图像应用选择性模糊效果。设置了半径为5,标准差为2,阈值为0.5,对所有通道进行模糊处理。最后,将处理后的图像保存为'blurred_image.jpg',并输出处理成功的提示信息。如果处理失败,则输出处理失败的提示信息。最后,销毁Imagick对象,释放资源。