$color 參數可以是像這樣的字串
"rgb(255, 255, 255)"
如您所知,該範例代表白色。
"rgb" 表示紅-綠-藍,數值是每個數量的數值,從 0 到 255。
黑色會是 "rgb(0, 0, 0)"。
完整的紅色會是 "rgb(255, 0, 0)"。
(PECL imagick 2 >= 2.3.0,PECL imagick 3)
Imagick::transparentPaintImage — 將像素繪製為透明
$target
,$alpha
,$fuzz
,$invert
將符合目標顏色的像素繪製為透明。如果 Imagick 是針對 ImageMagick 版本 6.3.8 或更新版本編譯的,則可以使用此方法。
target
要繪製的目標顏色
alpha
透明度級別:1.0 為完全不透明,0.0 為完全透明。
fuzz
模糊量。例如,將 fuzz 設定為 10,則強度分別為 100 和 102 的紅色會被視為相同顏色。
invert
如果為 true
,則繪製任何不符合目標顏色的像素。
成功時傳回 true
。
範例 #1 Imagick::transparentPaintImage()
<?php
function transparentPaintImage($color, $alpha, $fuzz) {
$imagick = new \Imagick(realpath("images/BlueScreen.jpg"));
//需要使用支援透明度的格式
$imagick->setimageformat('png');
$imagick->transparentPaintImage(
$color, $alpha, $fuzz * \Imagick::getQuantum(), false
);
//非必要,但有助於整理剩餘的像素
$imagick->despeckleimage();
header("Content-Type: image/png");
echo $imagick->getImageBlob();
}
?>
$color 參數可以是像這樣的字串
"rgb(255, 255, 255)"
如您所知,該範例代表白色。
"rgb" 表示紅-綠-藍,數值是每個數量的數值,從 0 到 255。
黑色會是 "rgb(0, 0, 0)"。
完整的紅色會是 "rgb(255, 0, 0)"。