(PECL imagick 2 >= 2.3.0, PECL imagick 3)
Imagick::transparentPaintImage — ピクセルを透過させる
$target
,$alpha
,$fuzz
,$invert
対処の色にマッチするピクセルを透過させます。 このメソッドは、ImageMagick バージョン 6.3.8 以降で Imagick をコンパイルした場合に使用可能です。
target
対象となる色。
alpha
透明度。1.0 は完全な不透明で 0.0 が完全な透明をあらわします。
fuzz
あいまいさをあらわす量。たとえば、これを 10 に設定すると、 赤色の値が 100 の色と 102 の色は同じものとみなされます。
invert
true
の場合は、対象の色にマッチしないピクセルを変更します。
成功した場合に true
を返します。
例1 Imagick::transparentPaintImage()
<?php
function transparentPaintImage($color, $alpha, $fuzz) {
$imagick = new \Imagick(realpath("images/BlueScreen.jpg"));
//Need to be in a format that supports transparency
$imagick->setimageformat('png');
$imagick->transparentPaintImage(
$color, $alpha, $fuzz * \Imagick::getQuantum(), false
);
//Not required, but helps tidy up left over pixels
$imagick->despeckleimage();
header("Content-Type: image/png");
echo $imagick->getImageBlob();
}
?>