@synapse_people

Как сделать белый фон прозрачным?

Всем привет)
Подскажите, плиз, каким образом можно вырезать белый фон из картинки (точнее - заменить его прозрачностью) при помощи PHP расширения Imagick так, чтобы при этом не объедало куски от нормальной картинки? То есть, заменить все белые пиксели на прозрачность, а по краю чтобы был antialiasing (плавный переход от прозрачного к непрозрачному).
Интересует метод, в сторону которого стоит посмотреть.. также подойдет рабочий код))
Спасибо!
  • Вопрос задан
  • 490 просмотров
Пригласить эксперта
Ответы на вопрос 1
@synapse_people Автор вопроса
Кому нужно будет:
$fuzz = 0.1;

        $im = new Imagick();

        $im->readimage('файл.jpg');
        $im->setImageFormat('png');

        $max = $im->getQuantumRange();
        $max = $max["quantumRangeLong"];

        $im->trimImage($fuzz * $max);
        $im->transparentPaintImage($im->getImagePixelColor(0, 0), 0, $fuzz * $max, FALSE);

        header('Content-Type: image/png');
        echo $im->getImageBlob();
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы