我有一个透明背景的png图像,我想把它转换成一个白色背景的jpg图像。
代码基本上是这样的:
$image = new Imagick('transparent.png');
$image->writeImage('opaque.jpg');
但这会创建一个黑色的背景jpg。我一直在与有史以来最糟糕的文档作斗争,试图找到一种将透明转换为白色的方法,但无济于事。
编辑:嗯,我尝试了Marc B的想法,并取得了一定的效果。
$image = new Imagick('transparent.png');
$white = new Imagick();
$white->newImage($image->getImageWidth(), $image->getImageHeight(), "white");
$white->compositeimage($image, Imagick::COMPOSITE_OVER, 0, 0);
$white->writeImage('opaque.jpg');
$image->destroy();
$white->destroy();
现在的问题是,它总是导致脚本分段错误。
https://stackoverflow.com/questions/4973184
复制相似问题