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数据库连接
Oct 09 PHP
网站用php实现paypal整合方法
Nov 28 PHP
PHP中Session引起的脚本阻塞问题解决办法
Apr 08 PHP
PHP屏蔽过滤指定关键字的方法
Nov 03 PHP
ThinkPHP处理Ajax返回的方法
Nov 22 PHP
PHP中$this和$that指针使用实例
Jan 06 PHP
PHP几个实用自定义函数小结
Jan 25 PHP
php面向对象值单例模式
May 03 PHP
CI框架使用composer安装的依赖包步骤与方法分析
Nov 21 PHP
Yii2――使用数据库操作汇总(增删查改、事务)
Dec 19 PHP
PHP中__set()实例用法和基础讲解
Jul 23 PHP
宝塔面板出现“open_basedir restriction in effect. ”的解决方法
Mar 14 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
php在线打包程序源码
2008/07/27 PHP
php操作xml入门之xml基本介绍及xml标签元素
2015/01/23 PHP
CodeIgniter分页类pagination使用方法示例
2016/03/28 PHP
thinkphp框架无限级栏目的排序功能实现方法示例
2020/03/29 PHP
Jquery实现显示和隐藏的4种简单方式
2013/08/28 Javascript
jquery validation验证身份证号,护照,电话号码,email(实例代码)
2013/11/06 Javascript
一个JavaScript防止表单重复提交的实例
2014/10/21 Javascript
编写高性能Javascript代码的N条建议
2015/10/12 Javascript
BootStrap文件上传样式超好看【持续更新】
2016/05/10 Javascript
修改Jquery Dialog 位置的实现方法
2016/08/26 Javascript
jQuery下拉菜单的实现代码
2016/11/03 Javascript
javascript遍历json对象的key和任意js对象属性实例
2017/03/09 Javascript
nodeJS实现简单网页爬虫功能的实例(分享)
2017/06/08 NodeJs
十大 Node.js 的 Web 框架(快速提升工作效率)
2017/06/30 Javascript
BootStrap下的弹出框加载select2框架失败的解决方法
2017/08/31 Javascript
详谈commonjs模块与es6模块的区别
2017/10/18 Javascript
laydate日历控件使用方法详解
2017/11/20 Javascript
JS常见DOM节点操作示例【创建 ,插入,删除,复制,查找】
2018/05/14 Javascript
vue+axios+mock.js环境搭建的方法步骤
2018/08/28 Javascript
vue实现form表单与table表格的数据关联功能示例
2019/01/29 Javascript
mpvue性能优化实战技巧(小结)
2019/04/17 Javascript
Vue+Openlayers自定义轨迹动画
2020/09/24 Javascript
[22:59]VGJ.S vs VG 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
python 正则表达式 概述及常用字符
2009/05/04 Python
python列表操作使用示例分享
2014/02/21 Python
python简单商城购物车实例代码
2018/03/15 Python
python print 按逗号或空格分隔的方法
2018/05/02 Python
django-crontab 定时执行任务方法的实现
2019/09/06 Python
python学生管理系统的实现
2020/04/05 Python
virtualenv介绍及简明教程
2020/06/23 Python
通俗讲解python 装饰器
2020/09/07 Python
来自南加州灵感的工作和娱乐服装:TravisMathew
2019/05/01 全球购物
日本订房网站,预订日本星级酒店/温泉旅馆:Relux(支持中文)
2020/01/03 全球购物
医药工作者的求职信范文
2013/09/21 职场文书
我去timi了,一起去timi是什么意思?
2022/04/13 杂记
Win11自动黑屏怎么办 Win11自动黑屏设置教程
2022/07/15 数码科技