美文网首页读者
PHP中压缩图片

PHP中压缩图片

作者: 参观西湖 | 来源:发表于2019-10-24 18:20 被阅读0次
    function imgzip($ml,$wjm,$newwid,$newhei){
        //目录 文件名 新宽 新高
        $imgInfo = getimagesize($ml.$wjm);
        $wid=$imgInfo[0];//宽
        $hei=$imgInfo[1];//高
        if($wid<$newwid && $hei<$newhei){
            return $ml.$wjm;
        }
    
        //打开图片
        $imgType = image_type_to_extension(
            $imgInfo[2], false);
        $fun = "imagecreatefrom{$imgType}";
        $image = $fun($ml.$wjm);
    
        $bl=$newwid/$newhei;
        //判断长宽比,等比缩放
        if($wid/$hei>$bl){
            $hei=$newwid/($wid/$hei);
            $wid=$newwid;
        }else {
            $wid = $newhei * ($wid / $hei);
            $hei = $newhei;
        }
        //新建一张图片
        $images2 = imagecreatetruecolor($wid, $hei); 
        //将原图复制到新建图片中
        //imagecopyresampled(
            $dst_image, $src_image, 
            $dst_x, $dst_y, $src_x, $src_y,
            $dst_w, $dst_h, $src_w, $src_h)
        imagecopyresampled(
            $images2, $image, 
            0, 0, 0, 0, 
            $wid,$hei, $imgInfo[0],$imgInfo[1]);
        imagedestroy($image);//销毁原始图片
        //保存图片到新文件
        //代码输出图片的质量 0-100 100质量最高
        imagejpeg($images2, $ml.'slt_'.$wjm, 100); 
        imagedestroy($images2);
        return $ml.'slt_'.$wjm;
    }
    

    相关文章

      网友评论

        本文标题:PHP中压缩图片

        本文链接:https://www.haomeiwen.com/subject/remdvctx.html