PHP图片处理之使用imagecopyresampled函数裁剪图片例子

这篇文章主要介绍了PHP图片处理之使用imagecopyresampled函数裁剪图片例子,本文例子相对简单,是一篇入门级的学习总结,需要的朋友可以参考下

图片裁剪是指在一个大的背景图片中裁剪出一张指定区域的图片,常见的应用是在用户设置个人头像时,可以从上传的图片中,裁剪出一个合适的区域作为自己的个人头像图片。图像裁剪和图片缩放的相似,所以也是借助imagecopyresampled()函数去实现这个功能,同样也是以JPEG图片格式为例,声明一个图像裁剪函数cut(),代码如下所示:

  1. <?php
  2. //在一个大的背景图片中裁剪出指定区域的图片,以jpeg图片格式为例
  3. function cut($filename,$x,$y,$width,$height){
  4. $back = imagecreatetruecolor($width, $height);
  5. //创建一个可以保存裁剪后图片的资源
  6. $cutimg = imagecreatetruecolor($width, $height);
  7. //使用imagecopyresampled()函数对图片进行裁剪
  8. imagecopyresampled($cutimg,$back,0,0,$x,$y,$width,$height,$width,$height);
  9. //保存裁剪 后的图片,如果不想覆盖图片可以为裁剪后的图片加上前缀
  10. imagejpeg($cutimg,$filename);
  11. imagedestroy($cutimg);
  12. imagedestroy($back);
  13. }//www.phpfensi.com
  14. cut("brophp.jpg", 50, 50, 200, 200);
  15. ?>