php复习 第九天 绘制图形验证码
来源:互联网 发布:淘宝买aj的正品店 编辑:程序博客网 时间:2024/04/28 07:05
ps:不知为何,博主很喜欢正则和绘制这种东西。
使用的话,把$stringText的值取出即可~
<?phpheader("Content-Type:image/jpeg");//告诉浏览器现在要输出图片#图像处理 GD库 #1)打开或创建相关函数:#imagecreatetruecolor 创建真彩画布##2)绘制图像相关函数:#imagecolorallocate 分配颜色#imagefill 区域填充,背景填充#imagesetpixel 画一个单一像素#imageline 画一条线#imagestring 水平地画一行字符串。(可用下面的函数替代)#imagettftext 用TrueType 字体向图像写入文本##3)输出图像相关函数#imagejpeg#header#imagegif#imagepng#imagewbmp##4)释放资源#imagedestroy#在php中可以用GD库来对图像进行处理操作。#由于我使用的是phpStudy集成环境,所以运行phpStudy.exe后,选择php扩展,找到gd2,打钩即可。#案例 生成验证码:#要求1:背景颜色可随机变换#要求2:验证码文本为4位随机小写字母。#要求3:充沛利用点与线来美化验证码。$width = 140;$height = 40;//1.创建--真彩画布$image = imagecreatetruecolor($width,$height);//2.绘制 #背景颜色--rgb颜色整体数值越高,图像颜色越浅。$colorBg = imagecolorallocate($image, rand(150,255),rand(150,255),rand(150,255));#背景色填充imagefill($image, $width-1, $height-1, $colorBg);#绘制干扰点for($i = 0;$i <= 100;$i++){ imagesetpixel($image, rand(1,$width-1), rand(1,$height-1), rand(0,150));}#绘制干扰线及颜色for($i = 1; $i <= 3; $i++){ $colorLine = imagecolorallocate($image, rand(50,150),rand(50,150),rand(50,150)); $x1 = rand(1,$width/2); $y1 = rand(1,$height/2); $x2 = rand($width/2,$width-1); $y2 = rand($height/2,$height-1); imageline($image, $x1, $y1, $x2, $y2,$colorLine);//x1,y1,x2,y2坐标方式}#1)随机验证图案$stringCode = array('a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z');#绘制随机验证文字、颜色for($i = 1; $i <= 4; $i++ ){ $stringText = $stringCode[rand(0,count($stringCode)-1)]; #2)随机倾斜角度 $angle = rand(-15,15); #3)绘制文字颜色 $colorString = imagecolorallocate($image, rand(1,100), rand(1,100), rand(1,100)); imagettftext($image, 20, $angle, $i*20, 30, $colorString, 'font/Gisha.ttf', $stringText);}//3.输出图像imagejpeg($image);//4.释放资源imagedestroy($imagejpeg);?>
附:
1 0
- php复习 第九天 绘制图形验证码
- 第九天-复习(第一阶段)
- php图形验证码
- php 绘制验证码
- php绘制验证码
- php实战第九天
- php实战第九天
- 使用java绘制图形验证码
- PHP生成图形验证码
- PHP图形验证码源程序
- php添加图形验证码
- PHP 中文图形验证码
- php-GD2-图形绘制
- 第三节 windows绘制图形
- 十天学会php之第九天
- 十天学会php之第九天
- 十天学会php之第九天
- 十天学会php之第九天
- 动态规划&数字三角形
- 对于一个三本电气自动化专业学生的劣势 分析(个人的一些总结)
- 01-复杂度2 Maximum Subsequence Sum
- Demo05
- 二进制中1的个数
- php复习 第九天 绘制图形验证码
- 学习笔记之 —— 一个textview控件搞定中间文本左右两张图
- URAL 1114 Boxes 【dp】
- 另类数据Alternative Data行业调查
- Win10 python3.5安装lxml库
- Matlab Tricks(二十一)—— 软阈值函数的实现
- Demo06三目运算
- PHP环境搭建-windows
- Octave学习不错的知识汇总