PHP图像处理之imagecreate、imagedestroy函数介绍


Posted in PHP onNovember 19, 2014

使用PHP的GD库处理图像时,必须对画布进行管理。创建画布就是在内存中开辟一块存储区域,以后在PHP中对图像的所有操作都是基于这个图布处理的,图布就是一个图像资源。在PHP中,可以使用imagecrete()和imageCreateTrueColor()两个函数创建指定的画布。这两个函数的作用是一致的,都是建立一个指定大小的画布,他们的原型如下所示:

resource imagecreate(int $x_size,int $y_size)              //新建一个基于调色板的图像

resource imagecreatetruecolor(int $x_size,int $y_size)             //新建一个真彩色图像

虽然这两个函数都可以创建一个新的画布,但各自能够容纳的颜色的总数是不同的。imageCreate()函数可以创建一个基于普通调色板的图像,通常支持256色。而imageCreateTrueColor()函数可以创建一个真彩色图像,但该函数不能用于GIF文件格式。当画布创建后,返回一个图像标识符,代表了一幅宽度为$x_size和高度为$y_size的空白图像引用句柄。在后续的绘图过程中,都需要使用这个资源类型的句柄。例如,可以通过调用imagesx()和imagesy()两个函数获取图像的大小。代码如下所示:

<?php

$img = imagecreatetruecolor(300,200);//创建一个300*200的画布

echo imagesx($img);//输出画布宽度300

echo imagesy($img);//输出画布高度200

?>

另外,画布的引用句柄如果不再使用,一定要将这个资源销毁,释放内存与该图像的存储单元。画布的销毁过程非常简单,调用imagedestroy()函数就可以实现。其语法格式如下所示:

bool imagedestroy(resource $image)                  //销毁一图像

如果该方法调用成功,就会释放与参数$image关联的内存。其中参数$image是由图像创建函数返回的图像标识符。

PHP 相关文章推荐
PHP insert语法详解
Jun 07 PHP
php中使用临时表查询数据的一个例子
Feb 03 PHP
解析PHP缓存函数的使用说明
May 10 PHP
javascript数组与php数组的地址传递及值传递用法实例
Jan 22 PHP
typecho插件编写教程(五):核心代码
May 28 PHP
DEDECMS首页调用图片集里的多张图片
Jun 05 PHP
php生成PDF格式文件并且加密
Jun 22 PHP
PHP 错误处理机制
Jul 06 PHP
PHP实现生成唯一会员卡号
Aug 24 PHP
详细解读php的命名空间(一)
Feb 21 PHP
PHP钩子实现方法解析
May 21 PHP
解决Laravel5.2 Auth认证退出失效的问题
Oct 14 PHP
PHP图像处理之使用imagecolorallocate()函数设置颜色例子
Nov 19 #PHP
PHP GD库生成图像的几个函数总结
Nov 19 #PHP
PHP中绘制图像的一些函数总结
Nov 19 #PHP
PHP中round()函数对浮点数进行四舍五入的方法
Nov 19 #PHP
PHP中创建图像并绘制文字的例子
Nov 19 #PHP
PHP图片处理之图片背景、画布操作
Nov 19 #PHP
php使用function_exists判断函数可用的方法
Nov 19 #PHP
You might like
一篇入门的php Class 文章
2007/04/04 PHP
php 无限级缓存的类的扩展
2009/03/16 PHP
简单谈谈PHP vs Node.js
2015/07/17 PHP
Windows2003下php5.4安装配置教程(IIS)
2016/06/30 PHP
Laravel框架实现的使用smtp发送邮件功能示例
2019/03/12 PHP
laravel5.6实现数值转换
2019/10/23 PHP
jquery 事件冒泡的介绍以及如何阻止事件冒泡
2012/12/25 Javascript
JS实现匀速运动的代码实例
2013/11/29 Javascript
浅谈jQuery中 wrap() wrapAll() 与 wrapInner()的差异
2014/11/12 Javascript
浅谈页面装载js及性能分析方法
2014/12/09 Javascript
Javascript基础教程之switch语句
2015/01/18 Javascript
jQuery EasyUI提交表单验证
2016/07/19 Javascript
js实现加载更多功能实例
2016/10/27 Javascript
Vue计算属性的使用
2017/08/04 Javascript
在layui tab控件中载入外部html页面的方法
2019/09/04 Javascript
layui插件表单验证提交触发提交的例子
2019/09/09 Javascript
python妹子图简单爬虫实例
2015/07/07 Python
python运行时间的几种方法
2016/06/17 Python
Python中的数学运算操作符使用进阶
2016/06/20 Python
python3.6 +tkinter GUI编程 实现界面化的文本处理工具(推荐)
2017/12/20 Python
python leetcode 字符串相乘实例详解
2018/09/03 Python
python中pytest收集用例规则与运行指定用例详解
2019/06/27 Python
PyTorch之图像和Tensor填充的实例
2019/08/18 Python
python在OpenCV里实现投影变换效果
2019/08/30 Python
Python 时间戳之获取整点凌晨时间戳的操作方法
2020/01/28 Python
python time.strptime格式化实例详解
2021/02/03 Python
移动端HTML5实现文件上传功能【附代码】
2016/03/25 HTML / CSS
New Balance德国官方网站:购买鞋子和服装
2019/08/31 全球购物
结构和类有什么异同
2012/07/16 面试题
优秀干部获奖感言
2014/01/31 职场文书
农村面貌改造提升实施方案
2014/03/18 职场文书
班主任寄语大全
2014/04/04 职场文书
高中生学习计划书
2014/09/15 职场文书
起诉离婚协议书样本
2014/11/25 职场文书
MySQL 8.0 之不可见列的基本操作
2021/05/20 MySQL
Win10 和 Win11可以共存吗? win10/11产品生命周期/服务更新介绍
2021/11/21 数码科技