Web前端技巧分享:教你用GD库生成验证码

Posted 程序员的小傲娇

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Web前端技巧分享:教你用GD库生成验证码相关的知识,希望对你有一定的参考价值。

验证码相信大家都不会陌生,在网站登录的时候经常会遇到。那么你知道这个验证码是如何实现的吗?下面小千就为大家介绍一下这个GD库,还有一些常见的图片水印也是用GD实现的哦!

GD库是什么?

GD库是php处理图形的扩展库,GD库提供了一系列用来处理图片的API,使用GD库可以处理图片,或者生成图片,也可以给图片加水印。

准备使用GD库

安装配置GD库 1.编辑PHP配置文件,设置extension_dir=‘ext所在的目录’。 2.开启extension=php_gd2.dll,去掉前面的分号。 3.重启服务器。
在这里插入图片描述

如何使用GD库?

创建画布 --分配颜色 --开始绘图 --通知浏览器以图像的形式显示 --输出图像或者保存 --销毁资源
在这里插入图片描述

创建画布

imagecreatetruecolor($width, $height);

水平写一个字符 imagechar($image, $font, $x, $y, $c, c o l o r ) 垂 直 写 一 个 字 符 i m a g e c h a r u p ( color) 垂直写一个字符 imagecharup( color)imagecharup(image, $font, $x, $y, $c, c o l o r ) 水 平 书 写 字 符 串 i m a g e s t r i n g ( color) 水平书写字符串 imagestring( color)imagestring(image, $font, $x, $y, $string, c o l o r ) 垂 直 书 写 字 符 串 i m a g e s t r i n g u p ( color) 垂直书写字符串 imagestringup( color)imagestringup(image, $font, $x, $y, $string, $color)

用jpeg的方式显示 header(“content-type:image/jpeg”); 用png的方式显示 header(‘content-type:image/png’); 用gif的方式显示 header(‘content-type:image/gif’);
在这里插入图片描述

GD库生成验证码

生成随机颜色可以使用mt_rang(0,255);方法进行生成

在设置上面混淆效果的时候可以使用imagefilledrectangle($image, $x1, $y1, $x2, $y2, $color)方法即可完成 并且其中参数分别为:image 创建画布变量 font 字体大小 1,2,3,4 , 5, x1,y1 位置(图像左上角为 0, 0) x2,y2 填充矩形宽度和高度 color分配颜色变量

同时在其中需要设置imagettftext来修改修改输出文字的字体
在这里插入图片描述

以上就是GD生成验证码的步骤介绍了,如果有问题可以在评论中留言,大家一起讨论。

本文来自千锋教育,转载请注明出处。

以上是关于Web前端技巧分享:教你用GD库生成验证码的主要内容,如果未能解决你的问题,请参考以下文章

103前端 | JavaScript 性能优化技巧分享

PHP使用GD库实现 图像生成缩放logo水印和简单验证码

php基础之gd图像生成缩放logo水印和简单验证码实现

90% 前端都会的 ES6 简化代码技巧,你用过哪些?

web前端技巧分享:vue过滤器的那点事!

90% 前端都会的 ES6 简化代码技巧,你用过哪些?