PHP创建缩略图造成图片质量低下的完美解决方法
- ?
- ?
- ?
- ?
- ?
- ?
- ?
- ??
- function?thum($img_name,$max_width,$max_height,$suffix){??
- ????????$img_infos=getimagesize($img_name);??
- ????????$img_height=$img_infos[0];??
- ????????$img_width=$img_infos[1];??
- ????????$img_extension='';??
- ????????switch($img_infos[2]){??
- ????????????case?1:??
- ????????????????$img_extension='gif';??
- ????????????????break;??
- ????????????case?2:??
- ????????????????$img_extension='jpeg';??
- ????????????????break;??
- ?????????case?3:??
- ????????????????$img_extension='png';??
- ????????????????break;??
- ????????????default:??
- ????????????????$img_extension='jpeg';??
- ????????????????break;??
- ????????????}??
- ????????$new_img_size=get_thum_size($img_width,$img_height,$max_width,$max_height);??
- ??????????
- ??????????
- ??????????
- ??????????
- ????????$img_func='';??
- ????????$img_handle='';??
- ????????$thum_handle='';??
- ????????switch($img_extension){??
- ????????????case?'jpg':??
- ????????????????$img_handle=imagecreatefromjpeg($img_name);??
- ????????????????$img_func='imagejpeg';??
- ????????????????break;??
- ????????????case?'jpeg':??
- ????????????????$img_handle=imagecreatefromjpeg($img_name);??
- ????????????????$img_func='imagejpeg';??
- ???????????????break;??
- ????????????case?'png':??
- ????????????????$img_handle=imagecreatefrompng($img_name);??
- ????????????????$img_func='imagepng';??
- ????????????????break;??
- ????????????case?'gif':??
- ????????????????$img_handle=imagecreatefromgif($img_name);??
- ????????????????$img_func='imagegif';??
- ????????????????break;??
- ????????????default:??
- ????????????????$img_handle=imagecreatefromjpeg($img_name);??
- ????????????????$img_func='imagejpeg';?
- ????????????????break;??
- ????????????}??
- ????????????
- ????????$quality=100;??
- ????????if($img_func==='imagepng'?&&?(str_replace('.',?'',?PHP_VERSION)>=?512)){??
- ????????????$quality=9;??
- ????????????}???
- ??????????
- ????????$thum_handle=imagecreatetruecolor($new_img_size['height'],$new_img_size['width']);??
- ????????if(function_exists('imagecopyresampled')){??
- ????????????imagecopyresampled($thum_handle,$img_handle,?0,?0,?0,?0,$new_img_size['height'],$new_img_size['width'],$img_height,$img_width);??
- ????????????}else{??
- ????????????????imagecopyresized($thum_handle,$img_handle,?0,?0,?0,?0,$new_img_size['height'],$new_img_size['width'],$img_height,$img_width);??
- ????????????}??
- ????????call_user_func_array($img_func,array($thum_handle,get_thum_name($img_name,$suffix),$quality));??
- ????????imagedestroy($thum_handle);??
- ????????imagedestroy($img_handle);??
- ????}??
- ??
- ?
- ?
- ?
- ?
- ?
- ?
- ?
- ??
- function?get_thum_size($width,$height,$max_width,$max_height){??
- ????$now_width=$width;??
- ????$now_height=$height;??
- ????$size=
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
-
2024-10-22 09:46:29
-
2024-10-13 13:53:41
-
2024-10-12 12:15:51
-
2024-10-11 22:47:31
-
2024-10-11 19:36:51
-
2024-10-11 15:50:41
-
2024-10-11 15:07:41
-
2024-10-11 14:21:21
-
2024-10-11 12:59:11
-
2024-10-11 12:17:31