第一步:安装thinkphp框架想要在自己的开发中使用thinkphp框架自然需要将它安装进自己的项目中。thinkphp的安装非常简单,只需要将解压后的压缩包直接移入项目根目录下即可。移动之后只需要修改一下项目中的入口文件index.php即可开始使用thinkphp。
第二步:引入thinkphp中的图片处理类引入thinkphp框架中的图片处理类用于操作图片,主要有缩放、裁剪、旋转等基础处理方法。其中旋转裁剪是本文需要介绍的重点。
在控制器中添加如下代码引入图片处理类:
1
use thinkImage;
第三步:图片旋转裁剪的实现旋转裁剪是对图片进行旋转和裁剪的组合操作,实现起来也非常简单。下面是本文的重难点部分——rotateCrop函数的代码实现。
1
2
3
4
5
6
7
8
9
10
11
12
13
/**
* 旋转并裁剪图片操作
* @param string $image 被操作图片路径
* @param int $width 裁剪宽度
* @param int $height 裁剪高度
* @param int $degree 旋转角度
* @return bool|string 处理后保存的文件路径或者false
**/
public function rotateCrop($image, $width, $height, $degree) {
$image = Image::open($image);
$image->rotate($degree)->crop($width, $height)->save($image);
return $image->save() ? $image->getPathName() : false;
}
在这个函数中,我们需要传递4个参数:图片路径、裁剪宽度、裁剪高度和旋转角度,其中图片路径是必传参数,其他3个参数是可选参数,宽度和高度默认为零,即不做裁剪处理。旋转角度也是默认值为0,即不做旋转处理。
其中最重要的就是旋转和裁剪的操作,Image::open($image)函数是开启一个图片对象,在对象中调用rotate()和crop()方法进行旋转和裁剪操作,最后save()方法保存并输出图片即可。
第四步:测试效果最后我们来测试一下我们的代码。在我们的控制器中添加如下代码:
1
2
3
4
5
6
$image = image/test.jpg;
$width = 200;
$height = 300;
$degree = 90;
$test = $this->rotateCrop($image, $width, $height, $degree);
echo @@##@@;
在上面的代码中,$image为目标图片路径,$width、$height为测试裁剪参数,$degree为测试旋转参数,在执行完我们的rotateCrop()函数之后,返回一个保存的图片路径,最后将它显示在页面上。当确认一切正确无误后,重新加载页面,即可浏览我们处理后的图片
以上就是thinkphp框架中的图片旋转裁剪功能怎么实现的详细内容,更多请关注php中文网其它相关文章!