0

下面是我的图像生成代码:

$thumb = imagecreatetruecolor($newwidth, $newheight) or die('Cannot Initialize new GD image stream'); 
    print_r($thumb);
    $source = imagecreatefrompng($filename) or die('Cannot Initialize new GD image stream'); 
    print_r($source);
    imagecopyresampled($thumb, $source, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);
    @imagepng(  $thumb, $original_img_dir_absolute_path.$original_img_name, 0 );

它将生成第一个 png,但只有黑色背景。任何人都知道它。

4

1 回答 1

3

您的代码似乎没问题。您可以检查片段是否没有占用原始图像的黑色部分。您还可以尝试删除您的“质量”参数imagepng()

imagepng($thumb, $original_img_dir_absolute_path . $original_img_name);

也许您的原始图像对比度低,而低质量显示您的图像是黑色的。

于 2018-01-09T16:38:49.247 回答