函式名: Imagick::sigmoidalContrastImage()
適用版本: Imagick 2.0.0 及以上版本
函式說明:該函式透過應用sigmoidal對比度調整來改變影象的對比度。sigmoidal調整是一種非線性調整,可以在影象的不同區域應用不同的對比度。
用法:
Imagick Imagick::sigmoidalContrastImage(bool $sharpen, float $alpha, float $beta, int $channel = Imagick::CHANNEL_DEFAULT)
引數:
- $sharpen(布林型):指定是否應用銳化,預設為false。如果設定為true,則會應用銳化。
- $alpha(浮點型):指定調整的斜率。較高的值將增加對比度,較低的值將減少對比度。
- $beta(浮點型):指定調整的偏移量。較高的值將增加亮度,較低的值將減少亮度。
- $channel(整型):指定應用調整的通道,預設為Imagick::CHANNEL_DEFAULT,表示應用於所有通道。
返回值:成功時返回一個新的Imagick物件,失敗時返回false。
示例:
// 建立Imagick物件並載入影象
$image = new Imagick('input.jpg');
// 應用sigmoidal對比度調整
$sharpen = true;
$alpha = 1.0;
$beta = 0.5;
$channel = Imagick::CHANNEL_DEFAULT;
$result = $image->sigmoidalContrastImage($sharpen, $alpha, $beta, $channel);
if ($result) {
// 顯示調整後的影象
header('Content-Type: image/jpeg');
echo $result;
} else {
echo '對比度調整失敗';
}
上述示例中,我們載入了一個名為input.jpg的影象,並使用sigmoidalContrastImage()函式進行對比度調整。我們設定$sharpen為true,這意味著在應用調整時會進行銳化。$alpha的值為1.0,表示斜率為1.0,即不進行斜率調整。$beta的值為0.5,表示偏移量為0.5,即增加亮度。我們將調整應用於所有通道(預設值),並將調整結果輸出到瀏覽器上。如果調整成功,將顯示調整後的影象;如果失敗,將顯示錯誤資訊。