一文看懂 GD2库

一文看懂 GD2库文章目录一 GD2 简介 1 验证码 实际上是一个 img 二 GD2 库使用步骤 2 1 添加扩展 2 2 修改 php 配置文件 2 3 重启服务三 GD2 里面的常用方法 3 1imagecreate 2

大家好,欢迎来到IT知识分享网。

一、 GD2简介

1、 验证码(实际上是一个img)

美食杰的注册页
在这里插入图片描述

2、 水印图
在这里插入图片描述

3、 缩略图
在这里插入图片描述

二、 GD2库使用步骤

2.1添加扩展

我们的phpstudy集成环境下是默认安装了php_gd2.dll文件,如果没有自己百度搜索一下,把下载的dll文件放在你的对应版本的ext目录下。
在这里插入图片描述

2.2修改php配置文件

我们直接在目录下找到配置文件双击打开
在这里插入图片描述

或者通过phpstudy打开
在这里插入图片描述

按住ctrl+f搜索extension=php_gd2.dll文件,把前面的分号去掉
在这里插入图片描述

2.3重启服务

在这里插入图片描述

三、 GD2里面的常用方法

3.1 imagecreate

imagecreate(宽,高)是新建一个基于调色板的图像,本质上就是创建一个画布。默认是透明色

3.2 imagecolorallocate
3.3 imagefill
3.4 输出图像资源

imagepng()是输出png格式图像到浏览器
imagejpeg()是输出jpeg格式图像到浏览器
imagegif()是输出gif格式图像到浏览器
如果直接输出是乱码
在这里插入图片描述

因为浏览器默认是解析成html标签,不识别图像,所以加上header头识别

3.5创建真彩画布

imagecreatetruecolor(宽,高)创建一个真彩的图像资源,默认是黑色的

在这里插入图片描述

imagepng可以设置两个参数

在这里插入图片描述

如果imagepng()设置了一个参数是把图像资源直接在浏览器输出,如果设置了第二个参数代表把图片保存成自己定义的文件名。
在这里插入图片描述

3.6在图像中写文字
3.6.1imagettftext

imagettftext — 用 TrueType 字体向图像写入文本
我们在自己的计算机c盘/windows/fonts/里面有各种内置的字体
在这里插入图片描述

我们随意复制一个文件放在自己的项目文件夹下面
在这里插入图片描述

显示效果如下:

在这里插入图片描述

这个方法也可以输出中文

在这里插入图片描述

3.6.2imagestring

imagestring — 水平地画一行字符串,输中文会乱码,只能输出字符。
这个方法字符的左上角为0,0点,不用设置字体格式,默认使用内置字体
在这里插入图片描述

总结如下:
1、
imagettftext不仅能输出英文字符还能输出中文
imagestring只能输出英文,如果是中文是解析后的乱码
2、imagettftext是文字的左小角为0,0点。
imagestring文字的左上角为0,0点
4、 imagettftext等加入字体文件格式,imagestring使用默认字体

3.7在图像中写横线

imageline(图像资源,开始点的x坐标,开始点的y坐标,结束点的x坐标,结束点的y坐标,线条颜色)
在这里插入图片描述

3.8在图像中画矩形

imagerectangle(图像资源,左上角的x和y坐标,右下角的x和y坐标,矩形颜色);
在这里插入图片描述

3.9在图像中画弧度

在这里插入图片描述

参数说明如下:
在这里插入图片描述

4.0 imagecreatefrompng/jpeg/gif
在这里插入图片描述

4.2getimagesize
在这里插入图片描述

getimagesize()是返回的关于图像大小以及类型相关信息的数组
第一个参数:宽
第二个参数:高
第三个参数:给出的是图像的类型,返回的是数字,其中1 = GIF,2 = JPG,3 = PNG
最后一个参数:是图像类型
4.2imagecopy
imagecopy(目标图像资源,源图像资源,放在目标位置的x和y坐标,原图截取开始的x和y坐标,截取原图的宽度和高度)

四、 验证码案例

4.1验证码第一版
4.2回顾生成四位随机数
4.3验证码第二版

在这里插入图片描述

生成效果如下:
在这里插入图片描述

然后我们生成随机的颜色,修改如下:
在这里插入图片描述

4.4点击按钮切换图片

在这里插入图片描述

4.5点击按钮切换验证码

因为浏览器有一个缓存机制,就是访问同一个文件的时候就不会去给服务器发请求,从缓存里读取,所以导致我们点击按钮的没有作用,还是访问的以前缓存的那个图片,我们采取拼接参数的形式
在这里插入图片描述

所以我们更改代码如下:
在这里插入图片描述

五、 水印图

在这里插入图片描述

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/156487.html

(0)
上一篇 2025-02-11 21:26
下一篇 2025-02-11 21:33

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信