首页 > 开发 > PHP > 正文

php实现等比例压缩图片

2024-05-04 22:42:39
字体:
来源:转载
供稿:网友

本文实例为大家分享了php实现等比例压缩图片的具体代码,供大家参考,具体内容如下

/**   * desription 压缩图片   * @param sting $imgsrc 图片路径   * @param string $imgdst 压缩后保存路径   */  public function compressedImage($imgsrc, $imgdst) {    list($width, $height, $type) = getimagesize($imgsrc);        $new_width = $width;//压缩后的图片宽    $new_height = $height;//压缩后的图片高            if($width >= 600){      $per = 600 / $width;//计算比例      $new_width = $width * $per;      $new_height = $height * $per;    }        switch ($type) {      case 1:        $giftype = check_gifcartoon($imgsrc);        if ($giftype) {          header('Content-Type:image/gif');          $image_wp = imagecreatetruecolor($new_width, $new_height);          $image = imagecreatefromgif($imgsrc);          imagecopyresampled($image_wp, $image, 0, 0, 0, 0, $new_width, $new_height, $width, $height);          //90代表的是质量、压缩图片容量大小          imagejpeg($image_wp, $imgdst, 90);          imagedestroy($image_wp);          imagedestroy($image);        }        break;      case 2:        header('Content-Type:image/jpeg');        $image_wp = imagecreatetruecolor($new_width, $new_height);        $image = imagecreatefromjpeg($imgsrc);        imagecopyresampled($image_wp, $image, 0, 0, 0, 0, $new_width, $new_height, $width, $height);        //90代表的是质量、压缩图片容量大小        imagejpeg($image_wp, $imgdst, 90);        imagedestroy($image_wp);        imagedestroy($image);        break;      case 3:        header('Content-Type:image/png');        $image_wp = imagecreatetruecolor($new_width, $new_height);        $image = imagecreatefrompng($imgsrc);        imagecopyresampled($image_wp, $image, 0, 0, 0, 0, $new_width, $new_height, $width, $height);        //90代表的是质量、压缩图片容量大小        imagejpeg($image_wp, $imgdst, 90);        imagedestroy($image_wp);        imagedestroy($image);        break;    }  }

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持错新站长站。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表