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

yipeiwu_com5年前PHP代码库

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

复制代码 代码如下:

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

相关文章

php根据指定位置和长度获得子字符串的方法

本文实例讲述了php根据指定位置和长度获得子字符串的方法。分享给大家供大家参考。具体分析如下: php的substr函数功能非常强大,不断可以从前往后去子字符串还可以从后往前取字符串...

将时间以距今多久的形式表示,PHP,js双版本

废话不多说直接上代码。 PHP FOR Smarty 复制代码 代码如下: * Name: time_ago * Purpose: 将时间戳专为距当前时间的表现形式 * 1分钟内按秒 *...

一些PHP Coding Tips(php小技巧)[2011/04/02最后更新]

最后更新: 2011/04/02 1. 使用list来实现一次获取explode后的特定段值: list( , $mid) = explode(';', $string); 2. 使用N...

php数组排序usort、uksort与sort函数用法

本文实例讲述了php数组排序usort、uksort与sort函数用法。分享给大家供大家参考。具体用法分析如下: 对数组排序:usort() 函数使用用户自定义的函数对数组排序,实例代码...

php实现保存submit内容之后禁止刷新

复制代码 代码如下: $strsql = "INSERT INTO `xxx` (`aaa`) VALUES ('".$_POST["bbb"]."','".$_POST["ccc"]....