Как залить градиентом на ImageMagick?

Статус
В этой теме нельзя размещать новые ответы.

kud

Постоялец
Регистрация
18 Фев 2009
Сообщения
89
Реакции
11
Добрый день, задача следующая:
Нужно залить png shape градиентом.
Если просто изменить цвет, то:
Код:
$im = new Imagick('img.png');
$im->setImageAlphaChannel(Imagick::ALPHACHANNEL_EXTRACT);
$im->setImageBackgroundColor('white');
$im->setImageAlphaChannel(Imagick::ALPHACHANNEL_SHAPE);
Как залить градиентом?
 
Как говорится, сам спросил, сам ответил:
Код:
$icon = new Imagick('image.png');
$icon->setImageAlphaChannel(Imagick::ALPHACHANNEL_EXTRACT);
$icon->setImageBackgroundColor('white');
$icon->setImageAlphaChannel(Imagick::ALPHACHANNEL_SHAPE);
$gradient = New Imagick();
$data = $icon->getImageGeometry();
$gradient->newPseudoImage($data['width'], $data['height'], "gradient:red-blue");
$icon->compositeImage($gradient, imagick::COMPOSITE_ATOP, 0, 0);
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху