PHP截取指定图片大小的方法
本文实例讲述了PHP截取指定图片大小的方法。分享给大家供大家参考。具体分析如下:
imagecopyresampled($newim,$im,0,0,7,174,120,42,$new_img_width,$new_img_height);//原始尺寸120x42
imagecopyresampled($newim,$im,0,0,100,30,500,500,$new_img_width,$new_img_height);//图截出来后放到500x500
imagecopyresampled($newim,$im,0,0,100,30,10,10,$new_img_width,$new_img_height);//图截出来后缩小到10x10
大概主要是这个function的操作而已,主要只看第一个原尺寸的那个参数对照就好了,下述是imagecopyresampled的参数,一个一个对照如下:
$newim:imagecreate($new_img_width,$new_img_height);建立的空白图层
$im:imagecreatefromjpeg($filename);把原本的图片读进来
0:输出图要从哪边开始的x点(图片输出的点是可以指定的,没指定到的位置就会是你create的图层颜色或图)
0:输出图要从哪边开始的y点(同上)
7:原始图要从哪边开始x(指定要从哪个x点开始截取)
174:原始图要从哪边开始y(指定要从哪个点开始截取,截取区块大小由下面两个参数去定)
120:截图要截多大width,从上面的指定的位置,开始截取120px宽(如果要放大缩小也是由此处决定)
42:截图要截多大height,从上面的指定的位置,开始截取42px高(如果要放大缩小也是由此处决定)
$new_img_width:这是新的图,从上面写的第二组参数0,0,要开始画多宽(在此程式目前是指定截图的大小)
$new_img_height:这是新的图,从上面的第二组参数0,0,要开始画多高(在此程式目前是指定截图的大小)
PHP实例代码如下:
header("Content-type:image/jpeg"); $filename='book_rabbit_rule.jpg'; /*读取图档*/ $im=imagecreatefromjpeg($filename); /*图片要截多少,长/宽*/ $new_img_width=120; $new_img_height=42; /*先建立一个新的空白图档*/ $newim=imagecreate($new_img_width,$new_img_height); //输出图要从哪边开始x,y,原始图要从哪边开始x,y,要画多大x,y(resize),要抓多大x,y imagecopyresampled($newim,$im,0,0,7,174,120,42,$new_img_width,$new_img_height); /*放大成500x500的图*/ //imagecopyresampled($newim,$im,0,0,100,30,500,500,$new_img_width,$new_img_height); /*将图印出来*/ imagejpeg($newim); /*资源回收*/ imagedestroy($newim); imagedestroy($im);
希望本文所述对大家的PHP程序设计有所帮助。