函式名稱: Imagick::transparentPaintImage()
適用版本: Imagick 類在 Imagick 擴充套件版本 2.2.0 或更高版本中可用。
函式用途:該函式用於將指定顏色的畫素透明化。
語法:public Imagick::transparentPaintImage ( mixed $target , float $alpha , float $fuzz , bool $invert )
引數:
- target: 指定要透明化的顏色,可以是 ImagickPixel 物件、顏色名稱或者顏色值的字串。
- alpha: 設定透明度的值,範圍從 0 到 1,0 表示完全透明,1 表示完全不透明。
- fuzz: 設定顏色匹配的容差值,範圍從 0 到正無窮大。預設值為 0。
- invert: 設定是否反轉顏色匹配,如果設定為 true,則會將與目標顏色不匹配的畫素透明化。預設值為 false。
返回值:成功時返回 true,失敗時返回 false。
示例:
// 建立 Imagick 物件
$image = new Imagick('image.jpg');
// 建立顏色物件
$color = new ImagickPixel('red');
// 設定透明度為 0.5,容差值為 0.1,不反轉顏色匹配
$image->transparentPaintImage($color, 0.5, 0.1, false);
// 顯示處理後的影象
header('Content-Type: image/jpeg');
echo $image;
上述示例中,首先建立了一個 Imagick 物件,載入了一張名為 "image.jpg" 的影象。然後,建立了一個紅色的顏色物件。接下來,呼叫 transparentPaintImage() 函式,將影象中所有與紅色匹配的畫素透明化,透明度為 0.5,容差值為 0.1,不反轉顏色匹配。最後,將處理後的影象輸出到瀏覽器顯示。
請注意,為了執行該示例,您需要安裝 Imagick 擴充套件並啟用它。