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 相关文章推荐
超级简单的发送邮件程序
Oct 09 PHP
php中通过数组进行高效随机抽取指定条记录的算法
Sep 09 PHP
推荐10个提供免费PHP脚本下载的网站
Dec 31 PHP
PHP.ini安全配置检测工具pcc简单介绍
Jul 02 PHP
详解WordPress中用于更新和获取用户选项数据的PHP函数
Mar 08 PHP
3种方法轻松处理php开发中emoji表情的问题
Jul 18 PHP
PHP与SQL语句常用大全
Dec 10 PHP
PHP封装的非对称加密RSA算法示例
May 28 PHP
Laravel 验证码认证学习记录小结
Dec 20 PHP
TP5框架实现签到功能的方法分析
Apr 05 PHP
laravel7学习之无限级分类的最新实现方法
Sep 30 PHP
Mac M1安装mnmp (Mac+Nginx+MySQL+PHP) 开发环境
Mar 29 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实现阻止用户上传成人照片或者裸照
2014/12/25 PHP
php模拟post提交数据的方法
2015/02/12 PHP
实例讲解PHP设计模式编程中的简单工厂模式
2016/02/29 PHP
php实现留言板功能(代码详解)
2017/03/28 PHP
老生常谈PHP面向对象之命令模式(必看篇)
2017/05/24 PHP
ThinkPHP类似AOP思想的参数验证的实现方法
2019/12/18 PHP
php开发最强大的IDE编辑的phpstorm 2020.2配置Xdebug调试的详细教程
2020/08/17 PHP
PhpStorm 2020.3:新增开箱即用的PHP 8属性(推荐)
2020/10/30 PHP
JS延迟加载(setTimeout) JS最后加载
2010/07/15 Javascript
用JS将搜索的关键字高亮显示实现代码
2013/11/08 Javascript
javascript获取web应用根目录的方法
2014/02/12 Javascript
javascript实现连续赋值
2015/08/10 Javascript
jQuery移动页面开发中的触摸事件与虚拟鼠标事件简介
2015/12/03 Javascript
用React实现一个完整的TodoList的示例代码
2017/10/30 Javascript
vue.js中引入vuex储存接口数据及调用的详细流程
2017/12/14 Javascript
解决vue 打包发布去#和页面空白的问题
2018/09/04 Javascript
JS前端知识点总结之页面加载事件,数组操作,DOM节点操作,循环和分支
2019/07/04 Javascript
对vue中的事件穿透与禁止穿透实例详解
2019/10/28 Javascript
webpack安装配置与常见使用过程详解(结合vue)
2020/06/01 Javascript
[32:07]完美世界DOTA2联赛PWL S3 LBZS vs Rebirth 第一场 12.16
2020/12/17 DOTA
centos 下面安装python2.7 +pip +mysqld
2014/11/18 Python
python函数装饰器用法实例详解
2015/06/04 Python
Python利用BeautifulSoup解析Html的方法示例
2017/07/30 Python
详解如何用OpenCV + Python 实现人脸识别
2017/10/20 Python
python字典改变value值方法总结
2019/06/21 Python
django创建超级用户过程解析
2019/09/18 Python
python 使用递归的方式实现语义图片分割功能
2020/07/16 Python
使用pygame实现垃圾分类小游戏功能(已获校级二等奖)
2020/07/23 Python
用python爬虫批量下载pdf的实现
2020/12/01 Python
八一建军节活动方案
2014/02/10 职场文书
初一学生评语大全
2014/04/24 职场文书
电力培训心得体会
2014/09/02 职场文书
中学生旷课检讨书模板
2014/10/08 职场文书
正风肃纪查摆剖析材料
2014/10/10 职场文书
2016新年感言
2015/08/03 职场文书
Python学习之迭代器详解
2022/04/01 Python