文档章节

图片裁剪

xxfyqq
 xxfyqq
发布于 2015/06/01 14:23
字数 151
阅读 8
收藏 0

function imagecropper($source_path, $target_width, $target_height) { $source_info = getimagesize($source_path); $source_width = $source_info[0]; $source_height = $source_info[1]; $source_mime = $source_info['mime']; $source_ratio = $source_height / $source_width; $target_ratio = $target_height / $target_width; // 源图过高

if ($source_ratio > $target_ratio)
{
	$cropped_width  = $source_width;
	$cropped_height = $source_width * $target_ratio;
	$source_x = 0;
	$source_y = ($source_height - $cropped_height) / 2;
}
// 源图过宽
elseif ($source_ratio < $target_ratio)
{
	$cropped_width  = $source_height / $target_ratio;
	$cropped_height = $source_height;
	$source_x = ($source_width - $cropped_width) / 2;
	$source_y = 0;
}

// 源图适中

else
{
	$cropped_width  = $source_width;
	$cropped_height = $source_height;
	$source_x = 0;
	$source_y = 0;
}
switch ($source_mime)
{
	case 'image/gif':
		$source_image = imagecreatefromgif($source_path);
		break;
	case 'image/jpeg':
		$source_image = imagecreatefromjpeg($source_path);
		break;
	case 'image/png':
		$source_image = imagecreatefrompng($source_path);
		break;
	default:
		return false;
		break;
}
$target_image  = imagecreatetruecolor($target_width, $target_height);
$cropped_image = imagecreatetruecolor($cropped_width, $cropped_height);
// 裁剪
imagecopy($cropped_image, $source_image, 0, 0, $source_x, $source_y, $cropped_width, $cropped_height);
// 缩放
imagecopyresampled($target_image, $cropped_image, 0, 0, 0, 0, $target_width, $target_height, $cropped_width, $cropped_height);
header('Content-Type: image/jpeg');
imagejpeg($target_image);
imagedestroy($source_image);
imagedestroy($target_image);
imagedestroy($cropped_image);

} imagecropper("1.jpg",50,50);

本文转载自:

下一篇: 遍历目录
xxfyqq
粉丝 0
博文 34
码字总数 23429
作品 0
昌平
私信 提问
SimpleCrop 支持任意角度旋转的图片裁剪组件

简介 :github.com/newbieYoung… 是一个在功能和交互上参考 IOS 系统的原生图片裁剪功能并支持任意角度旋转的 Web 图片裁剪组件; 左侧是 IOS 系统相册中原生的图片裁剪功能,右侧为 Simple...

NewbieYoung
05/01
0
0
php图片裁剪--Tclip

名字说明: T,头像之意。 clip,读[klip],译为裁剪。 Tclip,是一个头像自动识别,php图片裁剪项目。 概要: 用于图片裁剪。有以下特点: 1.能进行人脸识别。图片中有人脸,将自动视为人脸...

exinnet
2013/07/23
8K
2
【前端】图片裁剪(二)Jcrop实现裁剪

学着做自己,并优雅的放手不属于自己的。 前一篇文章已经跟大家讲述了如何利用JavaScript实现Web端图片裁剪功能。可能对大多数人来说,利用JavaScript去实现裁剪功能比较费事,那这一篇文章将...

zrunker
2017/10/25
0
0
apiCloud中图片裁剪模块FNImageClip的使用

思路 1.获取需裁剪图片的地址 2.跳转到裁剪页面 3.裁剪成功返回新图片地址 4.替换原有图片地址 增加修饰和事件 上面是动态生成的图片html布局数据,增加一个id标识,增加一个点击事件 打开裁剪...

桃子红了呐
2018/01/07
0
0
如何在微信公众号开发中实现图片裁剪

接触微信公众号开发已经有一段时间了,发现其实和网页开发差不多,但是因为浏览器的不同,自己也碰过一些坑,其中就有怎么实现图片裁剪功能。 一开始我是用PC端的思路去做的,首先在本地获取...

豆花饭烧土豆
2016/08/17
411
0

没有更多内容

加载失败,请刷新页面

加载更多

Taro 兼容 h5 踩坑指南

最近一周在做 Taro 适配 h5 端,过程中改改补补,好不酸爽。 本文记录📝遇到的问题,希望为有相同需求的哥们👬节约点时间。 Taro 版本:1.3.9。 解决跨域问题 h5 发请求会报跨域问题,需...

dkvirus
今天
4
0
Spring boot 静态资源访问

0. 两个配置 spring.mvc.static-path-patternspring.resources.static-locations 1. application中需要先行的两个配置项 1.1 spring.mvc.static-path-pattern 这个配置项是告诉springboo......

moon888
今天
3
0
hash slot(虚拟桶)

在分布式集群中,如何保证相同请求落到相同的机器上,并且后面的集群机器可以尽可能的均分请求,并且当扩容或down机的情况下能对原有集群影响最小。 round robin算法:是把数据mod后直接映射...

李朝强
今天
4
0
Kafka 原理和实战

本文首发于 vivo互联网技术 微信公众号 https://mp.weixin.qq.com/s/bV8AhqAjQp4a_iXRfobkCQ 作者简介:郑志彬,毕业于华南理工大学计算机科学与技术(双语班)。先后从事过电子商务、开放平...

vivo互联网技术
今天
19
0
java数据类型

基本类型: 整型:Byte,short,int,long 浮点型:float,double 字符型:char 布尔型:boolean 引用类型: 类类型: 接口类型: 数组类型: Byte 1字节 八位 -128 -------- 127 short 2字节...

audience_1
今天
9
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部