PHP截取指定图片大小的方法


Posted in PHP onDecember 10, 2014

本文实例讲述了PHP截取指定图片大小的方法。分享给大家供大家参考。具体分析如下:

imagecopyresampled($newim, $im, 0, 0, 7, 174, 120, 42, $new_img_width, $new_img_height); // 原始尺寸 120 x 42

imagecopyresampled($newim, $im, 0, 0, 100, 30, 500, 500, $new_img_width, $new_img_height); // 图截出来后放到 500 x 500

imagecopyresampled($newim, $im, 0, 0, 100, 30, 10, 10, $new_img_width, $new_img_height); // 图截出来后缩小到 10 x 10

大概主要是这个 function 的操作而已,主要只看第一个原尺寸的那个参数对照就好了,下述是 imagecopyresampled 的参数,一个一个对照如下:

$newim: imagecreate($new_img_width, $new_img_height); 建立的空白图层

$im: imagecreatefromjpeg($filename); 把原本的图片读进来

0: 输出图要从哪边开始的 x 点(图片输出的点是可以指定的,没指定到的位置就会是你 create 的图层颜色或图)

0: 输出图要从哪边开始的 y 点(同上)

7: 原始图要从哪边开始 x (指定要从哪个 x 点开始截取)

174: 原始图要从哪边开始 y (指定要从哪个点开始截取,截取区块大小由下面两个参数去定)

120: 截图要截多大 width ,从上面的指定的位置,开始截取 120px 宽(如果要放大缩小也是由此处决定)

42: 截图要截多大 height ,从上面的指定的位置,开始截取 42px 高(如果要放大缩小也是由此处决定)

$new_img_width: 这是新的图,从上面写的第二组参数 0, 0 ,要开始画多宽(在此程式目前是指定截图的大小)

$new_img_height: 这是新的图,从上面的第二组参数 0, 0 ,要开始画多高(在此程式目前是指定截图的大小)

PHP实例代码如下:

header("Content-type: image/jpeg");  

 

$filename = 'book_rabbit_rule.jpg'; 

/* 读取图档 */ 

$im = imagecreatefromjpeg($filename);  

/* 图片要截多少, 长/宽 */ 

$new_img_width = 120; 

$new_img_height = 42;  

/* 先建立一个 新的空白图档 */ 

$newim = imagecreate($new_img_width, $new_img_height);  

// 输出图要从哪边开始 x, y ,原始图要从哪边开始 x, y ,要画多大 x, y(resize) , 要抓多大 x, y 

imagecopyresampled($newim, $im, 0, 0, 7, 174, 120, 42, $new_img_width, $new_img_height);  

/* 放大成 500 x 500 的图 */ 

// imagecopyresampled($newim, $im, 0, 0, 100, 30, 500, 500, $new_img_width, $new_img_height);  

/* 将图印出来 */ 

imagejpeg($newim);  

/* 资源回收 */ 

imagedestroy($newim); 

imagedestroy($im);

希望本文所述对大家的PHP程序设计有所帮助。

PHP 相关文章推荐
基于PHP+MySQL的聊天室设计
Oct 09 PHP
php去除重复字的实现代码
Sep 16 PHP
php中3des加密代码(完全与.net中的兼容)
Aug 02 PHP
linux命令之调试工具strace的深入分析
Jun 03 PHP
浅析php中三个等号(===)和两个等号(==)的区别
Aug 06 PHP
一个PHP针对数字的加密解密类
Mar 20 PHP
kohana框架上传文件验证规则写法示例
Jul 14 PHP
thinkphp中ajax与php响应过程详解
Dec 08 PHP
PHP自定义错误处理的方法分析
Dec 19 PHP
浅谈Laravel模板实体转义带来的坑
Oct 22 PHP
PHP使用PhpSpreadsheet操作Excel实例详解
Mar 26 PHP
php实现图片压缩处理
Sep 09 PHP
php实现图片添加描边字和马赛克的方法
Dec 10 #PHP
PHP生成条形图的方法
Dec 10 #PHP
php自定文件保存session的方法
Dec 10 #PHP
php通过session防url攻击方法
Dec 10 #PHP
php利用cookies实现购物车的方法
Dec 10 #PHP
php针对cookie操作的队列操作类实例
Dec 10 #PHP
php利用cookie实现自动登录的方法
Dec 10 #PHP
You might like
浅析SVN常见问题及解决方法
2013/06/21 PHP
对于PHP 5.4 你必须要知道的
2013/08/07 PHP
Ajax中的JSON格式与php传输过程全面解析
2017/11/14 PHP
Laravel框架生命周期与原理分析
2018/06/12 PHP
Laravel 队列使用的实现
2019/01/08 PHP
爱恋千雪-US-AscII加密解密工具(网页加密)下载
2007/06/06 Javascript
jquery 弹出层注册页面等(asp.net后台)
2010/06/17 Javascript
ExtJS4如何给同一个formpanel不同的url
2014/05/02 Javascript
一个不错的仿携程自定义数据下拉选择select
2014/09/01 Javascript
全面了解JavaScript的数据类型转换
2016/07/01 Javascript
AngularJS轻松实现双击排序的功能
2016/08/30 Javascript
jQuery插件HighCharts实现的2D对数饼图效果示例【附demo源码下载】
2017/03/09 Javascript
字太多用...代替的方法(两种)
2017/03/15 Javascript
Node.js Stream ondata触发时机与顺序的探索
2019/03/08 Javascript
JavaScript中工厂函数与构造函数示例详解
2019/05/06 Javascript
JavaScript实现更换背景图片
2019/10/18 Javascript
记录微信小程序 height: calc(xx - xx);无效问题
2019/12/30 Javascript
js实现表格数据搜索
2020/08/09 Javascript
Vue3配置axios跨域实现过程解析
2020/11/25 Vue.js
[01:54]胎教DOTA2 准妈妈玩家现身中国区预选赛
2016/06/26 DOTA
[48:26]VGJ.S vs infamous Supermajor 败者组 BO3 第二场 6.4
2018/06/05 DOTA
python中验证码连通域分割的方法详解
2018/06/04 Python
Python3 导入上级目录中的模块实例
2019/02/16 Python
Django models文件模型变更错误解决
2020/05/11 Python
如何利用python生成MD5并去重
2020/12/07 Python
澳大利亚女性快速时尚零售商:Ally Fashion
2018/04/25 全球购物
SEPHORA丝芙兰捷克官网:购买香水、化妆品和护肤品
2018/11/26 全球购物
说一下mysql, oracle等常见数据库的分页实现方案
2012/09/29 面试题
毕业生精彩的自我评价分享
2013/10/06 职场文书
会计实习自我鉴定
2013/12/04 职场文书
上课玩手机检讨书
2014/02/08 职场文书
文秘档案管理岗位职责
2014/03/06 职场文书
党员活动日总结
2014/05/05 职场文书
校园会短篇的广播稿
2014/10/21 职场文书
病危通知单
2015/04/17 职场文书
python可视化分析绘制带趋势线的散点图和边缘直方图
2022/06/25 Python