函數(shù)名:Imagick::selectiveBlurImage()
適用版本:Imagick擴(kuò)展版本需為2.3.0以上
用法:該函數(shù)會(huì)對(duì)圖像應(yīng)用選擇性模糊效果,根據(jù)給定的半徑和標(biāo)準(zhǔn)差參數(shù),對(duì)圖像的每個(gè)像素進(jìn)行模糊處理。
語(yǔ)法:public Imagick::selectiveBlurImage(float $radius, float $sigma, float $threshold [, int $CHANNEL = Imagick::CHANNEL_ALL ] )
參數(shù):
- $radius: 模糊半徑,必須為非負(fù)數(shù),數(shù)值越大,模糊效果越明顯。
- $sigma: 模糊的標(biāo)準(zhǔn)差,必須為非負(fù)數(shù),數(shù)值越大,模糊效果越明顯。
- $threshold: 模糊處理的閾值,控制哪些像素會(huì)受到模糊處理的影響,取值范圍為0到1之間,數(shù)值越大,受影響的像素越少。
- $CHANNEL (可選): 模糊處理的通道,默認(rèn)為Imagick::CHANNEL_ALL,表示對(duì)所有通道進(jìn)行模糊處理。
返回值:成功時(shí)返回 true,失敗時(shí)返回 false。
示例:
// 創(chuàng)建Imagick對(duì)象
$image = new Imagick('image.jpg');
// 應(yīng)用選擇性模糊效果
$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對(duì)象
$image->destroy();
以上示例中,我們首先創(chuàng)建了一個(gè)Imagick對(duì)象,然后使用selectiveBlurImage()函數(shù)對(duì)圖像應(yīng)用選擇性模糊效果。設(shè)置了半徑為5,標(biāo)準(zhǔn)差為2,閾值為0.5,對(duì)所有通道進(jìn)行模糊處理。最后,將處理后的圖像保存為'blurred_image.jpg',并輸出處理成功的提示信息。如果處理失敗,則輸出處理失敗的提示信息。最后,銷毀Imagick對(duì)象,釋放資源。