PHP Imagick не может установить цвет фона фона

Я загружаю прозрачное изображение png и каждый раз, когда я пытаюсь установить цвет bg, используя setimagebackgroundcolor() он все еще прозрачен

  $input_img = new Imagick(); $input_img->setBackgroundColor("#ff0000"); $input_img->readImage("transparent.png"); $input_img->setimagebackgroundcolor("#00ff00"); $input_img->setImageFormat("png"); $input_img->setimagebackgroundcolor("#ff00ff"); $input_img->writeimage("image.png"); 

Related of "PHP Imagick не может установить цвет фона фона"

Первая строка кода устанавливает новый объект Imagickpixel для цветов. Вторая строка создает новый кадр, а 1920 и 1200 – это размеры.

 $color = new ImagickPixel("white"); $input_img->newImage(1920,1200, $color) 

Трюк использует: $im = $im->flattenImages(); :

 <?php $im = new Imagick($filename); $im->setImageBackgroundColor('#ffffff'); $im = $im->flattenImages(); $im->setImageFormat("jpeg"); $im->setImageCompressionQuality(95); $im->writeImage($filename); 

Попробуй это!

 $imput_img->setBackgroundColor(new ImagickPixel('blue'));