<?PHP/** * Generate thumbnail function (support picture format: GIF, JPEG, PNG and BMP) * @author ruxing.li * @param string $src source picture path * @param int $width Thumbnail width (equal to zoom only when height is specified) * @param int $width thumbnail height (equal to zoom only when width is specified) * @param string $filename save path (output directly to browser if not specified) * @ return BOOL*/ functionMkthumbnail ($src,$width=NULL,$height=NULL,$filename=NULL) { if(!isset($width) &&!isset($height)) return false; if(isset($width) &&$width<= 0) return false; if(isset($height) &&$height<= 0) return false; $size=getimagesize($src); if(!$size) return false; List($src _w,$src _h,$src _type) =$size; $src _mime=$size[' MIME ']; Switch($src _type) { Case1:$img _type= ' gif '; Break; Case2:$img _type= ' jpeg '; Break; Case5 |$img _type= ' png '; Break; Case15:$img _type= ' Wbmp '; Break; default:return false; } if(!isset($width)) $width=$src _w* ($height/$src _h); if(!isset($height)) $height=$src _h* ($width/$src _w); $imagecreatefunc= ' Imagecreatefrom '.$img _type; $src _img=$imagecreatefunc($src); $dest _img= Imagecreatetruecolor ($width,$height); Imagecopyresampled ($dest _img,$src _img, 0, 0, 0, 0,$width,$height,$src _w,$src _h); $imagefunc= ' image '.$img _type; if($filename) { $imagefunc($dest _img,$filename); } Else { Header(' Content-type: '.$src _mime); $imagefunc($dest _img); } Imagedestroy ($src _img); Imagedestroy ($dest _img); return true; } mkthumbnail ("./example.jpg", 200,200);?>
PHP Generate thumbnail image