//切割前图片URL:imageUrl, 切割后图片宽:$picW,切割后图片高:$picH //这个程序将图片变成指定大小的图片。 function changeImage($imageUrl,$endUrl,$picW,$picH){ //$endUrl="/web/insert/api/getimage/";//小图存放目录 //判断文件是否存在 不存在就切割完毕 if(!file_exists($imageUrl)){ if($flag==1){ die('请确认大图是否位于map/init 下并命名为1.jpg,2.jpg.......'); }else{ die('图片切割完毕'); } }else{ if(!file_exists($endUrl)) mkdir($endUrl); echo "正在切割图片"; } ini_set( 'memory_limit', '220M' ); //为支持大图片增加内存限制 //获取大图片的属性 list($width, $height, $type, $attr) = getimagesize($imageUrl); //从$filename创建一新图像 $image = imagecreatefromjpeg($imageUrl); $im = @imagecreatetruecolor($picW, $picH) or die("Cannot Initialize new GD image stream");//创建小图像 $colBG = imagecolorallocate($im, 255, 255, 255);//白色背景 imagefill( $im, 0, 0, $colBG );//加白色背景 //imagecopyresized($dst_im, $src_im, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);//用于缩小 imagecopyresized($im, $image, 0, 0, 0, 0, $picW, $picH, $width, $height); //imagecopy ( $im, $image, 0, 0, 0, 0, $width, $height );//拷贝大图片的一部分到小图片 用于切割 imagejpeg($im,$endUrl."/end.jpg",100);//创建小图片到磁盘,输出质量为75(0~100) imagedestroy($im);//释放与 $im 关联的内存 imagedestroy($image);//释放与 $image 关联的内存 }