在将图像从 PNG 转换为 JPEG 时,如何使用 ImageMagick(带有 php 扩展名)将透明背景设置为白色?
最佳答案
在撰写本文时,您尚未指定您使用的扩展程序,但如果您使用的是命令行,则命令为:
convert image.png -background white -flatten -alpha off image.jpg
更多信息请访问 Masking Usage documentation .
以 IMagick 为例,我认为您可以这样做:
(完全未经测试,从未使用过 IMagick,也没有安装它来测试)
$image = new IMagick('image.png');
$flattened = new IMagick();
$flattened->newImage($image->getImageWidth(), $image->getImageHeight(), new ImagickPixel("white"));
$flattened->compositeImage($image, imagick::COMPOSITE_OVER, 0, 0);
$flattened->setImageFormat("jpg");
$flattened->writeImage('image.jpg');
$image->clear();
$image->destroy();
$flattened->clear();
$flattened->destroy();
关于php - 使用 ImageMagick 和 PHP 将 PNG 转换为 JPG 并将透明背景设置为白色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5280118/