- 0
- 0
- 约6.34千字
- 约 30页
- 2016-08-21 发布于重庆
- 举报
第14章使用GD类库验证
第14章 使用GD类库——验证码模块 PHP语言本身在图像处理方面功能非常有限。虽然PHP本身不支持图形处理,但PHP的扩展GD类库却专门提供了这方面的功能。通过使用GD扩展库,可以非常方便的实现各种各样常见与不常见的图像操作。如常见的输出图像、画直线、画字符;不常见的加水印、生成缩略图、生成随机验证码等等。本章就来介绍,如何在PHP中使用GD类库对图像进行操作。 在本章中,将重点学习以下内容: 什么是GD类库 常用的GD类库操作 汉字验证码 图片缩略图 饼形图 加水印 14.1 什么是GD类库 作为对GD类库的入门本节先来介绍什么是GD库,以及使用GD类库进行一些常规的操作如:取得图像大小、取得图像后缀等等。通过本节内容的学习,读者可以对GD类库有一个大致的了解,为下节学习常用GD类库操作打下基础。 14.1.1 GD类库及使用 GD是Graphics Draw即图形绘制的缩写。该库提供了一系列用来处理图片的API,使用GD库可以处理图片,或者生成图片。由于PHP不能用核心的内置函数自动处理图像,所以需要启用GD扩展库来实现对图像的处理。 默认安装的PHP并没有加载GD扩展,所以当使用GD库中的函数时,会提示函数未定义。如以下代码所示: Fatal error: Call to undefined function imagecreatefromjpeg() 加载GD扩展库的方法非常简单,只需要编辑PHP的核心配置文件:php.ini。打开php.ini找到如下内容: extension=php_gd2.dll 去掉行首的分号并保存php.ini,重新启动Apache服务器即可完成加载。之后就可以顺利使用GD类库的各种函数了。 14.1.2 取得当前GD库信息 在使用GD库前,获取当前已经安装的GD库的相关信息非常重要。使用函数gd_info()即可获取当前GD库的相关信息。该函数不需要任何参数,执行函数将以数组形式返回当前GD库的相关信息。 14.1.3 取得图像的大小 要使用图像之前,事先知道图像的大小,对于图像操作很有必要。使用函数:getimagesize()即可获取图像的包括大小在内的相关信息。其语法格式如以下代码所示。 array getimagesize(string $filename[,array $imageinfo]) 14.1.4 取得图像的宽度与高度 除了使用getimagesize()获取图像宽度与高度之外,PHP的GD库中还有另专门用于获取图像宽度与高度的函数:imagesx()、imagesy()。该二函数的语法格式如以下代码所示: int imagesx(resource $image) int imagesx(resource $image) 以上代码中参数$image为使用imagecreate()类函数创建的图像资源,使用该函数将以数值形式返回所创建图像的宽度与高度。 14.1.5 取得图像类型后缀 在使用一个图像之前,如果能事先知道图像的类型,而又知道图像的后缀对于使用图像是很有用的。而GD库中就提供了用于取得指定图像类型后缀的函数:image_type_to_extension(),该函数的语法格式如以下代码所示: string image_type_to_extension(int $imagetype[,bool $include_dot]) 14.1.5 取得图像类型后缀 14.2 常用的GD类库操作 上一节为读者介绍了与GD相关的基础内容,这一节来介绍常用的GD类库操作。如:创建图像资源、以指定格式输出图像、销毁图像以及常用的实现画图功能的函数能。通过本节内容学习,读者可以掌握常用的GD类库操作。 14.2.1 创建图像 GD库函数进行绘图操作的对象是图像资源,所以在进行图像绘制前需要先创建图像资源。GD库函数中提供了一组用于创建图像资源的函数,这类函数是以imagecreate开头的一组函数。下面分别为读者介绍。 1.imagecreate()函数 2.imagecreatefromgif()函数 3.imagecreatefromjpeg()函数 4.imagecreatefrompng()函数 5.imagecreatefromstring()函数 6.imagecreatetruecolor()函数 14.2.2 以指定格式输出图像 对图像资源进行各种绘制操作之后,可以将图像资源按照指定的格式输出到浏览器。GD中也提供了一组函数用于实现以指定的格式输出图像,下面分别介绍该类函数。 1.imagegif()函数 2.imagejpeg()函数 3.imagepng()函数 14.2.2 以指定格式输出图像 14.2.3 销毁图像 图像资源在使
您可能关注的文档
- 第13章字符串及字符串操作.ppt
- 第13章总需求理论简单的国民收入决定模型.ppt
- 第13章数字签名.ppt
- 第13章标准模板库(STL).ppt
- 第13章龟兔赛跑多线程.ppt
- 第13讲测试和发布网页.ppt
- 第14周教案2.doc
- 第14章-电子邮件服务.ppt
- 第14章TCPIPNETBIOS和WINS.ppt
- 第14章__Linux系统安全.ppt
- 小学英语新人教版PEP四年级下册Unit 1Part B 第4课时教学课件(2026春).pptx
- 2026年《中级会计实务》模拟卷题库100道附参考答案【预热题】.docx
- 2026年《中级会计实务》模拟卷题库100道带答案(综合卷).docx
- 2026年《中级会计实务》模拟卷题库100道及答案(基础+提升).docx
- 2026年《中级会计实务》模拟卷题库100道带答案(能力提升).docx
- 2026年《中级会计实务》模拟卷题库100道附答案【满分必刷】.docx
- 2026年《中级会计实务》模拟卷题库100道及答案【必刷】.docx
- 2026年《中级会计实务》模拟卷题库100道及答案【必刷】.docx
- 2026年《中级会计实务》模拟卷题库100道(夺分金卷).docx
- 2026年《中级会计实务》模拟卷题库100道【含答案】.docx
最近下载
- 非物质文化遗产保护与传承中的社区教育模式研究教学研究课题报告.docx
- 东风雪铁龙世嘉车载智云音乐系统(ICC)投放资料之一:推介手册.pdf VIP
- 2025年海兰褐蛋鸡各阶段饲养管理 .pdf VIP
- 人教版九年级上册化学1至7单元综合测试卷(含答案).pdf VIP
- 骨科、麻醉科加速康复围手术期患者慢性病管理专家共识(2025年版) .pdf
- 人教版九年级化学上册:一至六单元测试卷.docx VIP
- 安徽省宿州市十三校2026届化学高一第一学期期末教学质量检测试题含解析.doc
- 一年级语文上册识生字测试题.doc VIP
- 输血安全护理ppt完整课件.pptx VIP
- 高一数学培优复数及其运算-讲义(学生版).pdf VIP
原创力文档

文档评论(0)