函数名: Imagick::unsharpMaskImage()
适用版本: Imagick 3.1.0以上
用法: Imagick::unsharpMaskImage(float $radius, float $sigma, float $amount, float $threshold [, int $channel = Imagick::CHANNEL_DEFAULT] ) : bool
参数:
- $radius: 模糊半径,用于定义模糊操作的大小。
- $sigma: 标准差,用于定义高斯模糊的强度。
- $amount: 锐化的强度,值越大锐化效果越明显。
- $threshold: 阈值,用于控制锐化的应用范围。
- $channel (可选): 用于指定应用锐化操作的通道,默认为Imagick::CHANNEL_DEFAULT。
返回值:成功时返回true,失败时返回false。
示例:
// 创建Imagick对象
$image = new Imagick('image.jpg');
// 应用unsharpMaskImage函数
$radius = 1.5;
$sigma = 1.0;
$amount = 1.0;
$threshold = 0.1;
$channel = Imagick::CHANNEL_DEFAULT;
$result = $image->unsharpMaskImage($radius, $sigma, $amount, $threshold, $channel);
if($result) {
echo "锐化操作成功!";
// 保存结果
$image->writeImage('image_sharpened.jpg');
} else {
echo "锐化操作失败!";
}
// 销毁Imagick对象
$image->destroy();
以上示例演示了如何使用Imagick::unsharpMaskImage()函数对一张图片进行锐化操作。首先创建了一个Imagick对象,然后设置了锐化操作的参数,包括模糊半径、标准差、锐化强度和阈值。最后调用unsharpMaskImage()函数进行锐化操作,并根据返回值判断操作是否成功。如果成功,将结果保存为一张新的图片;如果失败,则输出相应的错误信息。最后销毁Imagick对象以释放资源。