GD图像处理应用案例:验证码
验证码的实现
-
1. 实现验证码图片的展示
a. 生成图片资源:

背景色设定

b. 写入文字:imagestring效果一般.我们基本使用imagettftext函数.

c. 输出图片给浏览器

d. 关闭资源


-
2.实现验证码文字随机变化:实现有一串文字可以随机选择.
a.制作目标字符串集:从哪里选内容

b.如何随机从目标字符串里取出对应的汉字:汉字在utf-8字符集中占用3个字节,英文只占1个字节.确定字符数.

c.随机取出对应的字符(汉字):2个汉字

d.将取到的字符放到指定的图片位置即可

-
3.实现验证码文字颜色的随机变化:每次产生不同的文字颜色

-
4.实现验证码背景或干扰噪点:点和线
使用imagestring,imageline
a.增加干扰点:

b.增加干扰线:

c.改变文字大小和位置以及其他可变因素


-
5.实现点击刷新验证码功能
a.创建一个表单文件,里面有1个img能够显示图片:宽200,高50
由于刚才编写的验证码php文件响应返回的类型是jpg图片,因此实际上在浏览器眼里它实际上就是img元素.

b.实现点击更换验证码:让src重新请求php脚本,产生一张新的图片.因此需要给img标签增加一个点击事件.
img的src是否重新发起请求,取决于浏览器.而浏览器是否发起请求,取决于src是否改变(src换了浏览器才发起新请求)

c.如何让img标签的src每次都改变?以便浏览器发起新请求从而刷新验证码图片:

本文详细介绍了使用GD库生成验证码的过程,包括图片展示、文字随机变化、颜色随机变化及背景干扰等步骤,并提供了点击刷新验证码的方法。

5199

被折叠的 条评论
为什么被折叠?



