当前位置:首页 > PHP教程 > php图像处理 > 列表

php 复杂生成验证码图片

发布:smiling 来源: PHP粉丝网  添加日期:2014-08-19 16:31:28 浏览: 评论:0 
  1. function image3($length=4,$type='png',$width=180,$height=60,$fontface='fpnf.ttf',$verifyName='verify') { 
  2.         $code = $this->rand_string($length,4); 
  3.         $width = ($length*25)>$width?$length*25:$width
  4.         $authCode = new Zend_Session_Namespace('Auth_Code'); 
  5.         $authCode->imagecode = $randval
  6.          
  7.         $im=imagecreatetruecolor($width,$height); 
  8.         $borderColor = imagecolorallocate($im, 100, 100, 100);                    //边框色 
  9.         $bkcolor=imagecolorallocate($im,250,250,250); 
  10.         imagefill($im,0,0,$bkcolor); 
  11.         @imagerectangle($im, 0, 0, $width-1, $height-1, $borderColor); 
  12.         // 干扰 
  13.         for($i=0;$i<15;$i++){//开源代码phpfensi.com 
  14.             $fontcolor=imagecolorallocate($im,mt_rand(0,255),mt_rand(0,255),mt_rand(0,255)); 
  15.             imagearc($im,mt_rand(-10,$width),mt_rand(-10,$height),mt_rand(30,300),mt_rand(20,200),55,44,$fontcolor); 
  16.         } 
  17.         for($i=0;$i<255;$i++){ 
  18.             $fontcolor=imagecolorallocate($im,mt_rand(0,255),mt_rand(0,255),mt_rand(0,255)); 
  19.             imagesetpixel($im,mt_rand(0,$width),mt_rand(0,$height),$fontcolor); 
  20.         } 
  21.         if(!is_file($fontface)) { 
  22.             $fontface = dirname(__FILE__)."/".$fontface
  23.         } 
  24.         for($i=0;$i<$length;$i++){ 
  25.             $fontcolor=imagecolorallocate($im,mt_rand(0,120),mt_rand(0,120),mt_rand(0,120)); //这样保证随机出来的颜色较深。 
  26.             $codexsubstr($code,$i,1); 
  27.             imagettftext($im,mt_rand(16,20),mt_rand(-60,60),40*$i+20,mt_rand(30,35),$fontcolor,$fontface,$codex); 
  28.         } 
  29.         $this->output($im,$type); 
  30.     } 
  31.      
  32.     function output($im,$type='png')  
  33.     { 
  34.         header("Content-type: image/".$type); 
  35.         $ImageFun='Image'.$type
  36.         $ImageFun($im); 
  37.         imagedestroy($im); 
  38.     } 

Tags: PHP生成验证码 PHP图片

分享到: