php图像处理函数imagecopyresampled用法详解
本文实例讲述了php图像处理函数imagecopyresampled用法。分享给大家供大家参考,具体如下:
语法
boolimagecopyresampled(resource$dst_image,resource$src_image,int$dst_x,int$dst_y,int$src_x,int$src_y,int$dst_w,int$dst_h,int$src_w,int$src_h)
参数
dst_image
目标图象连接资源。
src_image
源图象连接资源。
dst_x
目标X坐标点。
dst_y
目标Y坐标点。
src_x
源的X坐标点。
src_y
源的Y坐标点。
dst_w
目标宽度。
dst_h
目标高度。
src_w
源图象的宽度。
src_h
源图象的高度。
成功时返回TRUE,或者在失败时返回FALSE。
案例
案例(图像裁减):
<?php $targ_w=$targ_h=150;//设置目标宽度与高度 $jpeg_quality=90;//图片质量90,满分为100 $src='demo_files/pool.jpg';//被处理的图片 $img_r=imagecreatefromjpeg($src);//获取原图 $dst_r=ImageCreateTrueColor($targ_w,$targ_h);//获取新图 imagecopyresampled($dst_r,$img_r,0,0,$_POST['x'],$_POST['y'], $targ_w,$targ_h,$_POST['w'],$_POST['h']);//目标图源图目标X坐标点目标Y坐标点源的X坐标点源的Y坐标点目标宽度目标高度源图宽度源图高度 header('Content-type:image/jpeg'); imagejpeg($dst_r,null,$jpeg_quality);//输出图象到浏览器或文件 ?>
案例二(重新取样):
<?php //源文件 $filename='1.jpg'; //设置最大宽高 $width=400; $height=400; //Contenttype header('Content-Type:image/jpeg'); //获取新尺寸 list($width_orig,$height_orig)=getimagesize($filename); $ratio_orig=$width_orig/$height_orig; if($width/$height>$ratio_orig){ $width=$height*$ratio_orig; }else{ $height=$width/$ratio_orig; } //重新取样 $image_p=imagecreatetruecolor($width,$height); $image=imagecreatefromjpeg($filename); imagecopyresampled($image_p,$image,0,0,0,0,$width,$height,$width_orig,$height_orig); //输出 imagejpeg($image_p,null,100); ?>
附上上传图片的三种思路
1.选择图片,提交表单,服务器统一处理上传,保存路径
2.选择图片,上传,获取路径,提交表单,保存路径
3.选择图片,上传到服务器,通过某种途径获取到服务器的图片,保存到本地
更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP图形与图片操作技巧汇总》、《PHP基本语法入门教程》、《PHP运算与运算符用法总结》、《php面向对象程序设计入门教程》、《PHP网络编程技巧总结》、《PHP数组(Array)操作技巧大全》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
希望本文所述对大家PHP程序设计有所帮助。