学习PHP图像处理(验证码)
来源:互联网 发布:java堆栈哪个大 编辑:程序博客网 时间:2024/05/21 16:57
今天来学习下验证码是怎样搞的,来学习下面得代码
<?php
session_start(); //启动Session会话header("content-type:image/png"); //设置创建图像的格式
$image_width=70; //设置图像宽度
$image_height=18; //设置图像高度
$new_number=$_GET[num];
$num_image=imagecreate($image_width,$image_height); //创建一个画布
imagecolorallocate($num_image,255,255,255); //设置画布的颜色
for($i=0;$i<strlen($new_number);$i++){ //循环读取SESSION变量中的验证码
$font=mt_rand(3,5); //设置随机的字体
$x=mt_rand(1,8)+$image_width*$i/4; //设置随机字符所在位置的X坐标
$y=mt_rand(1,$image_height/4); //设置随机字符所在位置的Y坐标
$color=imagecolorallocate($num_image,mt_rand(0,100),mt_rand(0,150),mt_rand(0,200)); //设置字符的颜色
imagestring($num_image,$font,$x,$y,$new_number[$i],$color); //水平输出字符
}
imagepng($num_image); //生成PNG格式的图像
imagedestroy($num_image); //释放图像资源
?>
PHP操作图形可以通过GD2库函数来实现.
第一步:创建画布
在GD2库函数中创建画布应用Imagecreate()函数.
$num_image=imagecreate($image_width,$image_height); //用imagecreate创建一个宽70像素,高18像素的画布.
第二步:设置画布颜色
imagecolorallocate($num_image,255,255,255); //设置画布颜色RGB值为:255,255,255
第三步:书写字体
PHP中的GD库可以绘制英文字符串,也可以绘制中文汉字.绘制英文字符串应用imagestring()函数.
imagestring(resource image,int font,int x,int y,string s,int col)
imagestring()函数用col颜色将字符串s绘制到image所代表的图像的(x,y)坐标处(这是字体串左上角的坐标,整幅图像的左上角为(0,0).如果font是1,2,3,4或5,则使用内置字体).
第四步:输出图像
imagepng($num_image); //生成PNG格式的图像
第五步:销毁图像
imagedestroy($num_image); //释放图像资源
0 0
- 学习PHP图像处理(验证码)
- 利用PHP应用图像处理生成验证码
- PHP学习之--图像处理
- PHP生成图像验证码
- PHP第十课 PHP图像处理函数以及验证码实现
- 应用PHP GD库中图像处理函数制作验证码
- PHP之创建图像验证码
- PHP之创建图像验证码 ---实例
- PHP之创建图像验证码 ---实例
- PHP 生成图像验证码,个性化参数
- php封装一个生成图像验证码
- [php] 图像之简单验证码制作
- php学习笔记(十四)php的图像处理函数
- PHP 图像处理
- 【php】图像处理函数
- php 图像处理
- PHP图像处理
- PHP图像处理
- How to create Dynamics CRM Online User License
- 将Sublime Text 2搭建成一个好用的IDE
- android 瀑布流效果(仿蘑菇街)
- 第六周作业
- php开发框架 yii框架搭建(windows 和Linux)
- 学习PHP图像处理(验证码)
- 函数指针和指针函数
- 索引
- 使用ScheduledExecutor和Calendar实现复杂任务调度
- 剖析淘宝TDDL(TAOBAO DISTRIBUTE DATA LAYER)
- Windows socket I/O模型 之 select(1)
- sort命令详解
- intent.setDataAndType用法
- 转:跟张志东深聊,腾讯的“进化力”