Chinaunix首页 | 论坛 | 博客
  • 博客访问: 463539
  • 博文数量: 141
  • 博客积分: 211
  • 博客等级: 入伍新兵
  • 技术积分: 1049
  • 用 户 组: 普通用户
  • 注册时间: 2010-09-17 16:25
个人简介

如此经年,望尽千帆。

文章分类

全部博文(141)

文章存档

2014年(73)

2013年(65)

2012年(3)

我的朋友

分类: PHP

2014-09-15 06:29:01

分享一例效果的实现代码,一例简单的 php图片验证码代码。
code:
  1. <?php
  2.     //文件头...
  3.     header("Content-type: image/png");
  4.     //创建真彩色白纸
  5.     $im = @imagecreatetruecolor(50, 20) or die("建立图像失败");
  6.     //获取背景颜色
  7.     $background_color = imagecolorallocate($im, 255, 255, 255);
  8.     //填充背景颜色(这个东西类似油桶)
  9.     imagefill($im,0,0,$background_color);
  10.     //获取边框颜色
  11.     $border_color = imagecolorallocate($im,200,200,200);
  12.     //画矩形,边框颜色200,200,200
  13.     imagerectangle($im,0,0,49,19,$border_color);


  14.     //逐行炫耀背景,全屏用1或0
  15.     for($i=2;$i<18;$i++){
  16.         //获取随机淡色
  17.         $line_color = imagecolorallocate($im,rand(200,255),rand(200,255),rand(200,255));
  18.         //画线
  19.         imageline($im,2,$i,47,$i,$line_color);
  20.     }


  21.     //设置字体大小
  22.     $font_size=12;


  23.     //设置印上去的文字
  24.     $Str[0] = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
  25.     $Str[1] = "abcdefghijklmnopqrstuvwxyz";
  26.     $Str[2] = "01234567891234567890123456";


  27.     //获取第1个随机文字
  28.     $imstr[0]["s"] = $Str[rand(0,2)][rand(0,25)];
  29.     $imstr[0]["x"] = rand(2,5);
  30.     $imstr[0]["y"] = rand(1,4);


  31.     //获取第2个随机文字
  32.     $imstr[1]["s"] = $Str[rand(0,2)][rand(0,25)];
  33.     $imstr[1]["x"] = $imstr[0]["x"]+$font_size-1+rand(0,1);
  34.     $imstr[1]["y"] = rand(1,3);


  35.     //获取第3个随机文字
  36.     $imstr[2]["s"] = $Str[rand(0,2)][rand(0,25)];
  37.     $imstr[2]["x"] = $imstr[1]["x"]+$font_size-1+rand(0,1);
  38.     $imstr[2]["y"] = rand(1,4);


  39.     //获取第4个随机文字
  40.     $imstr[3]["s"] = $Str[rand(0,2)][rand(0,25)];
  41.     $imstr[3]["x"] = $imstr[2]["x"]+$font_size-1+rand(0,1);
  42.     $imstr[3]["y"] = rand(1,3);


  43.     //写入随机字串
  44.     for($i=0;$i<4;$i++){
  45.         //获取随机较深颜色
  46.         $text_color = imagecolorallocate($im,rand(50,180),rand(50,180),rand(50,180));
  47.         //画文字
  48.         imagechar($im,$font_size,$imstr[$i]["x"],$imstr[$i]["y"],$imstr[$i]["s"],$text_color);
  49.     }


  50.     //显示图片
  51.     imagepng($im);
  52.     //销毁图片
  53.     imagedestroy($im);
阅读(1447) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~