可以使用GD和PHP为透明图像添加背景颜色

3 php gd thumbnails

我有使用GD用php语言编写的缩略图创建类.我想知道当我上传png或gif的透明图像时,我能将背景放在缩略图中吗?如果可能的话,请指导我如何.谢谢.

Ed *_*cas 9

这是PNG文件的工作解决方案:

$filePath = '';  //full path to your png, including filename and extension
$savePath = '';  //full path to saved png, including filename and extension
$colorRgb = array('red' => 255, 'green' => 0, 'blue' => 0);  //background color

$img = @imagecreatefrompng($filePath);
$width  = imagesx($img);
$height = imagesy($img);

//create new image and fill with background color
$backgroundImg = @imagecreatetruecolor($width, $height);
$color = imagecolorallocate($backgroundImg, $colorRgb['red'], $colorRgb['green'], $colorRgb['blue']);
imagefill($backgroundImg, 0, 0, $color);

//copy original image to background
imagecopy($backgroundImg, $img, 0, 0, 0, 0, $width, $height);

//save as png
imagepng($backgroundImg, $savePath, 0);
Run Code Online (Sandbox Code Playgroud)