Imagick::transparentPaintImage

(PECL imagick 2 >= 2.3.0, PECL imagick 3)

Imagick::transparentPaintImageРисует пиксели прозрачными

Описание

public Imagick::transparentPaintImage ( mixed $target , float $alpha , float $fuzz , bool $invert ) : bool

Рисует пиксели, соответствующие целевому цвету, прозрачным. Этот метод доступен, если Imagick был скомпилирован с версией ImageMagick 6.3.8 или старше.

Список параметров

target

Целевой цвет для рисования

alpha

Уровень прозрачности: 1.0 полностью непрозрачный, тогда как 0.0 полностью прозрачен.

fuzz

Мера округления (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();
}

?>