函式名: 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物件以釋放資源。