这段代码是借鉴网友的分享,决定挺好用,搬运过来了。

输入参数为png文件全路径,保存为名字相同的jpg文件,可以选择是否删除原jpg文件

//将PNG 修改为 jpg
//$srcPathName png文件全路径
//$delOri 是否删除原图片 true为删除
function png2jpg($srcPathName, $delOri=true)
{
    $srcFile=$srcPathName;
    $srcFileExt=strtolower(trim(substr(strrchr($srcFile,'.'),1)));
    if($srcFileExt=='png')
    {
        $dstFile = str_replace('.png', '.jpg', $srcPathName);
        $photoSize = GetImageSize($srcFile);
        $pw = $photoSize[0];
        $ph = $photoSize[1];
        $dstImage = ImageCreateTrueColor($pw, $ph);
        imagecolorallocate($dstImage, 255, 255, 255);
        //读取图片
        $srcImage = ImageCreateFromPNG($srcFile);
        //合拼图片
        imagecopyresampled($dstImage, $srcImage, 0, 0, 0, 0, $pw, $ph, $pw, $ph);
        imagejpeg($dstImage, $dstFile, 90);
        if ($delOri)
        {
            unlink($srcFile);
        }
        imagedestroy($srcImage);
    }
}
最后修改:2021 年 08 月 05 日
如果觉得我的文章对你有用,请随意赞赏