函数名: Imagick::filter()
适用版本: Imagick类是在PHP 5.1.3及以上版本中可用的
用法: Imagick::filter()函数用于应用自定义滤镜矩阵来处理图像。该函数接受一个二维数组作为参数,表示滤镜矩阵。滤镜矩阵是一个3x3的数组,其中包含9个数字,用于对图像进行卷积运算。
语法: bool Imagick::filter ( array $matrix )
参数:
- $matrix:一个包含9个数字的二维数组,表示滤镜矩阵。矩阵应该按照从左到右,从上到下的顺序排列。
返回值:成功时返回true,失败时返回false。
示例:
// 创建一个Imagick对象并加载图像
$image = new Imagick('input.jpg');
// 定义一个模糊滤镜矩阵
$matrix = [
[-1, -1, -1],
[-1, 8, -1],
[-1, -1, -1]
];
// 应用滤镜矩阵
$image->filter($matrix);
// 保存处理后的图像
$image->writeImage('output.jpg');
// 输出处理后的图像
header('Content-type: image/jpeg');
echo $image;
// 销毁对象
$image->destroy();
上述示例中,我们首先创建了一个Imagick对象并加载了一个名为input.jpg的图像。然后,我们定义了一个模糊滤镜矩阵,该矩阵将图像进行模糊处理。接下来,我们调用了filter()函数来应用滤镜矩阵。最后,我们保存处理后的图像为output.jpg,并通过header()函数将处理后的图像输出到浏览器。最后,我们销毁了Imagick对象。
请注意,滤镜矩阵的具体数值可以根据需要进行调整,以实现不同的图像处理效果。