PHP GD库相关图像生成和处理函数小结


Posted in PHP onSeptember 30, 2016

本文总结了PHP GD库相关图像生成和处理函数。分享给大家供大家参考,具体如下:

这几天在学习图像验证码部分,参考了许多例子,都是用GD库来生成和绘制图像的,所以打算把GD库封装成类来使用,顺便也学习和练习一下PHP面向对象部分。

首先分析一下GD库所提供的函数,依据功能作了划分:(这只是常用的基础级函数,更高级的函数稍后再作研究)

1. create // 图像生成

A.绘制图像

imageCreate // 基于调色板(256色)的图像(gif/*)
imageCreateTrueColor // 基于真彩色的图像(不能用来生成gif图像)

B.从图像创建图像

imageCreateFrom*(*=gd2/gd2part/gd/gif/jpeg/png/string/wbmp/xbm/xpm) // 从图像创建图像

C.copy

imageCopy // 复制局部图像
imageCopyMerge // 复制并合并局部图像
imageCopyMergeGray // 复制并合并局部图像(灰度)
imageCopyResampled // 复制局部图像(重新采样)
imageCopyResized // 复制局部图像(调整大小)

2. draw // 绘制

A.point // 点

imageSetPixel // 画点

B.line // 线

imageLine // 画线段
imageArc // 画椭圆弧
imageFilledArc // 画椭圆弧并填充
imageDashedLine // 画虚线

C.graph // 图形

imageEllipse // 画椭圆
imageFilledEllipse // 画椭圆并填充
imageRectangle // 画矩形
imageFilledRectangle // 画矩形并填充
imagePolygon // 画多边形
imageFilledPolygon // 画多边形并填充

D.text // 文本

imageChar // 画字符(水平)
imageCharUp // 画字符(垂直)
imageString // 画字符串(水平)
imageStringUp // 画字符串(垂直)
imageTtfText // 画文本(TrueType字体)
imageFtText // 画文本(FreeType2字体)
imagePsText // 画文本(PostScript Type1字体)

E.fill // 填充

imageFill // 填充颜色
imageFillToBorder // 填充至边界

3. color // 颜色

imageColorAllocate // 生成颜色
imageColorAllocateAlpha // 生成颜色(附加透明度)

4. attrs // 属性

getImageSize // 取得图像大小
getImageSizeFromString // 取得url或路径对应图像的大小
image_type_to_extension // 取得文件格式(扩展名)
image_type_to_mime_type // 取得文件的MIME类型
imageColorAt // 取得某像素的颜色
imageFontWidth // 取得字体宽度
imageFontHeight // 取得字体高度
imageSx // 取得图像宽度
imageSy // 取得图像高度

5. show // 输出(显示)图像

A.convert

image2Wbmp // 转换为WBMP格式并输出
jpeg2Wbmp // 将JPEG转换为WBMP格式并输出
png2Wbmp // 将PNG转换为WBMP格式并输出

B.show

imageGD // 输出图像(GD)
imageGD2 // 输出图像(GD2)
imageGif // 输出图像(GIF)
imageJpeg // 输出图像(JPEG)
imagePng // 输出图像(PNG)
imageWbmp // 输出图像(WBMP)
imageXbm // 输出图像(XBM)

6. destroy // 销毁

imageDestroy // 销毁图像

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

PHP 相关文章推荐
PHP 5.0对象模型深度探索之对象复制
Mar 27 PHP
PHP下一个非常全面获取图象信息的函数
Nov 20 PHP
PHP数据类型之整数类型、浮点数的介绍
Apr 28 PHP
基于PHP 面向对象之成员方法详解
May 04 PHP
深入解析php之apc
May 15 PHP
利用php递归实现无限分类 格式化数组的详解
Jun 08 PHP
PHP贪婪算法解决0-1背包问题实例分析
Mar 23 PHP
php实现插入排序
Mar 29 PHP
php里array_work用法实例分析
Jul 13 PHP
php去除二维数组的重复项方法
Nov 03 PHP
详解PHP中instanceof关键字及instanceof关键字有什么作用
Nov 05 PHP
Zend Framework教程之Zend_Helpers动作助手ViewRenderer用法详解
Jul 20 PHP
php结合md5的加密解密算法实例
Sep 30 #PHP
PHP页面输出时js设置input框的选中值
Sep 30 #PHP
PHP页面输出搜索后跳转下一页的处理方法
Sep 30 #PHP
php实现基于openssl的加密解密方法
Sep 30 #PHP
利用php抓取蜘蛛爬虫痕迹的示例代码
Sep 30 #PHP
php通过执行CutyCapt命令实现网页截图的方法
Sep 30 #PHP
linux平台编译安装PHP7并安装Redis扩展与Swoole扩展实例教程
Sep 30 #PHP
You might like
php实现URL加密解密的方法
2016/11/17 PHP
php实现异步将远程链接上内容(图片或内容)写到本地的方法
2016/11/30 PHP
php获取linux命令结果的实例
2017/03/13 PHP
laravel 框架配置404等异常页面
2019/01/07 PHP
最近项目写了一些js,水平有待提高
2009/01/31 Javascript
javascript 计算两个整数的百分比值
2009/12/26 Javascript
JavaScript 内置对象属性及方法集合
2010/07/04 Javascript
基于Unit PNG Fix.js有时候在ie6下不正常的解决办法
2013/06/26 Javascript
jQuery链使用指南
2015/01/20 Javascript
每日十条JavaScript经验技巧(二)
2016/06/23 Javascript
微信小程序实战之运维小项目
2017/01/17 Javascript
Vuejs仿网易云音乐实现听歌及搜索功能
2017/03/30 Javascript
JavaScript的继承实现小结
2017/05/07 Javascript
AngularJS 验证码60秒倒计时功能的实现
2017/06/05 Javascript
Vue组件开发之LeanCloud带图形校验码的短信发送功能
2017/11/07 Javascript
spirngmvc js传递复杂json参数到controller的实例
2018/03/29 Javascript
用vuex写了一个购物车H5页面的示例代码
2018/12/04 Javascript
JavaScript实现获取两个排序数组的中位数算法示例
2019/02/26 Javascript
在vue+element ui框架里实现lodash的debounce防抖
2019/11/13 Javascript
vue实践---vue不依赖外部资源实现简单多语操作
2020/09/21 Javascript
Python查找相似单词的方法
2015/03/05 Python
python获取指定目录下所有文件名列表的方法
2015/05/20 Python
利用Python实现命令行版的火车票查看器
2016/08/05 Python
python随机数分布random测试
2018/08/27 Python
用python爬取租房网站信息的代码
2018/12/14 Python
Python3实现配置文件差异对比脚本
2019/11/18 Python
python实现飞船游戏的纵向移动
2020/04/24 Python
Visual Studio Code搭建django项目的方法步骤
2020/09/17 Python
HTML5超文本标记语言的实现方法
2020/09/24 HTML / CSS
工作会议主持词
2014/03/17 职场文书
教职工代表大会主持词
2014/04/01 职场文书
新闻传媒系求职信范文
2014/04/19 职场文书
农村门前三包责任书
2014/07/25 职场文书
办公室文员岗位职责
2015/02/04 职场文书
Java内存模型之happens-before概念详解
2021/06/13 Java/Android
MySQL中JOIN连接的基本用法实例
2022/06/05 MySQL