【发布时间】:2012-08-09 23:34:37
【问题描述】:
每当用户使用我的脚本上传照片时,WideImage 都会将其转换为 JPEG。但是,我刚刚注意到,如果我上传一张带有透明背景的 PNG 图片,它会变成黑色。
有什么办法可以改成白色吗?
这是我保存图像的方式:
$img->resizeDown('500', null)->saveToFile('annonce_billeder/'.$bnavn.'.jpeg', 70);
【问题讨论】:
每当用户使用我的脚本上传照片时,WideImage 都会将其转换为 JPEG。但是,我刚刚注意到,如果我上传一张带有透明背景的 PNG 图片,它会变成黑色。
有什么办法可以改成白色吗?
这是我保存图像的方式:
$img->resizeDown('500', null)->saveToFile('annonce_billeder/'.$bnavn.'.jpeg', 70);
【问题讨论】:
我查看了 API,我没有看到任何用于在 resizeDown 上设置 BG 颜色或在 resizeDown 之前更改 PNG 上的 alpha 通道的任何内容......但是,我认为您可以使用 merge 方法来合并带有白色背景图像的 PNG。看一下该函数的 API,本质上 PNG 图像将是“水印”。
http://wideimage.sourceforge.net/wp-content/current/doc/WideImage/WideImage_Image.html#methodmerge
发布一些代码可能会有所帮助...您也许可以使用此方法
$white = $image->allocateColor(255, 255, 255);
【讨论】: