Codeigniter实现智能裁剪图片的方法
2014-06-12 10:54
826 查看
一副1024*768大小的图片,裁剪到240*240大小,裁剪后不失真,尽可能保留图片主题含义。
我使用到的方法:
1. 先将图片等比例缩略到可以裁剪的大小;
如果是宽幅图片,则按高度等比例缩放到高度 = 240px,窄幅图片(高度大于宽度)则按宽度等比例缩放;
2. 按长宽格式居中裁剪;
保留缩略后的图片中间部分;
复制代码 代码如下:$this->load->library('image_lib');
list($width, $height) = getimagesize("upload/123.jpg");
$config['image_library'] = 'gd2';
$config['source_image'] = 'upload/123.jpg';
$config['maintain_ratio'] = TRUE;
if($width >= $height)
{
$config['master_dim'] = 'height';
}else{
$config['master_dim'] = 'width';
}
$config['width'] = 240;
$config['height'] = 240;
$this->image_lib->initialize($config);
$this->image_lib->resize();
$config['maintain_ratio'] = FALSE;
if($width >= $height)
{
$config['x_axis'] = floor(($width * 240 / $height - 240)/2);
}else{
$config['y_axis'] = floor(($height * 240 / $width - 240)/2);
}
$this->image_lib->initialize($config);
$this->image_lib->crop();
您可能感兴趣的文章:
相关文章推荐
- Codeigniter实现智能裁剪图片的方法
- 76-圆形裁剪(指定图片裁剪为圆形),添加UIImage分类,两个类方法,实现圆形裁剪
- .net实现裁剪网站上传图片的方法
- C#实现在服务器端裁剪图片的方法
- 使用PHP实现生成固定大小图片缩略图功能(智能裁剪,图片不失真)
- CodeIgniter实现从网站抓取图片并自动下载到文件夹里的方法
- 微信小程序图片选择区域裁剪实现方法
- PHP实现图片不变型裁剪及图片按比例裁剪的方法
- 使用PHP实现生成固定大小图片缩略图功能(智能裁剪,图片不失真)
- CodeIgniter实现从网站抓取图片并自动下载到文件夹里的方法
- CI(CodeIgniter)框架实现图片上传的方法
- 在Android中如何使用clipPath()方法实现简单的裁剪圆形图片
- iOS 图片裁剪的实现方法
- PHP实现图片不变型裁剪及图片按比例裁剪的方法
- JavaScript图片裁剪的无变形实现方法
- .net实现裁剪网站上传图片的方法
- C#实现图片分割方法与代码
- 图片的淡入淡出的实现方法
- vb2005对图片放大方法的实现
- 刚写好一个图片居中裁剪并指定大小缩放的方法