为什么我的png图像背景在压缩后变成黑色?

时间:2019-05-28 06:37:57

标签: php codeigniter-3

我正在Codeigniter上的一个项目中,我需要上载图像并将其压缩。 jpeg图像可以正常压缩,但是当我压缩png图像时,背景会变成黑色,而不是透明的。我不知道该怎么办。

当我上传带有大多数绿色的png图像时,它全部变成绿色,以至于其他颜色。

//这是我正在使用的代码

function compress($source_url, $destination_url, $quality) {

   $info = getimagesize($source_url);

    if ($info['mime'] == 'image/jpeg'){
        $image = imagecreatefromjpeg($source_url);
    }
    elseif ($info['mime'] == 'image/gif'){
        $image = imagecreatefromgif($source_url);
    }
    elseif ($info['mime'] == 'image/png'){
        $image = imagecreatefrompng($source_url);
    }
    imagejpeg($image, $destination_url, $quality);
    return $destination_url;
}

如果我上传圆形png图像,则压缩后应保持不变。 我还尝试使用codeigniter默认帮助程序使用gd和gd2库压缩图像,但这对我也不起作用

0 个答案:

没有答案