VDS за 300р от нашего партнера SpaceWeb
[33]
29 Ноя 2013, 17:37

Imagick прозрачный цвет в белый непрозрачный

Привет!

Перевожу PNG изображения в JPEG, если в png изображении присутствует прозрачные элементы, то в jpeg изображении эти места закрашиваются черным.

Как убрать прозрачность и заменить её белым цветом?

Пытался использовать setImageBackgroundColor но ничего вы вышло! Фон изображения не меняется.

$Imagick = new Imagick(); $Imagick->readImage('file.png'); $Imagick->setImageFormat('jpeg'); $Imagick->setImageCompressionQuality(80); $Imagick->writeImage('file.jpg'); $Imagick->destroy();

Что тут нужно изменить?

Комментарии (1)
grom 02.12.2013 11:39

Нужно ещё склеить слои, странно, но только такой способ работает. Используйте метод flattenImages

$Imagick = new Imagick();
$Imagick->readImage('file.png');
$Imagick->setImageBackgroundColor('white'); //задаем фон
$Imagick = $Imagick->flattenImages(); // склеиваем слои
$Imagick->setImageFormat('jpeg');
$Imagick->setImageCompressionQuality(80);
$Imagick->writeImage('file.jpg');
$Imagick->destroy();
0

Добавить комментарий

Войдите, чтобы написать о чем-нибудь...
Вход Регистрация
Web.onRails
Найди ответ на любой вопрос по Веб-разработке!
задать вопрос...
Вы можете разместить Рекламный пост самостоятельно, либо отправив контент по адресу admin@webonrails.ru→ Оплата здесь ←Неоплаченные посты удаляются.
Метки:
Лучшее
[52]
16 Окт 2011, 15:38
Вывести все элементы POST
[просмотров 18495]
[100]
19 Дек 2014, 16:16
User-agent для Internet Explorer 11
[просмотров 11998]
[74]
31 мая 2011, 11:48
Python проверка существования переменной
[просмотров 11995]
[4]
10 Окт 2018, 15:33
Как запретить просмотр сайта по IP?
[просмотров 9668]
[125]
21 Июл 2011, 14:04
Python Imaging Library (PIL)
[просмотров 9030]
[315]
11 Авг 2011, 00:21
Спецификация HTML5 от W3C
[просмотров 7400]
[315]
16 Июл 2011, 20:03
Python работа с MySQL
[просмотров 5848]

Вести с Хабра