<?php
//切割前图片URL:imageUrl, 切割后图片宽:$picW,切割后图片高:$picH
//这个程序将图片变成指定大小的图片。
function changeImage($imageUrl,$endUrl,$picW,$picH){
//$endUrl="/web/insert/api/getimage/";//小图存放目录
//判断文件是否存在 不存在就切割完毕
if(!file_exists($imageUrl)){
if($flag==1){
exit('<p align=center>请确认大图是否位于map/init 下并命名为 1.jpg,2.jpg.......</p>');
}else{
exit('<p align=center>图片切割完毕</p>');
}
}else{
if(!file_exists($endUrl)) mkdir($endUrl);
echo "<p align=center>正在切割图片</p>";
}
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 关联的内存
}
changeImage("/web/insert/api/getimage/1366947521.jpg","/web/insert/api/getimage/",100,100);
?>
PHP切图
最新推荐文章于 2021-03-29 11:05:43 发布