1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56
| <?php function vcode($w,$h,$size,$fontn,$internum){ session_start(); $im=imagecreatetruecolor($w,$h); $black=imagecolorallocate($im,0,0,0); $white=imagecolorallocate($im,255,255,255); $green=imagecolorallocate($im,0,255,0); imagefill($im,0,0,$white); for($i=0;$i<$internum;$i++){ imagesetpixel($im,mt_rand(0,$w),mt_rand(0,$h),$black); } for($i=0;$i<6;$i++){ imageline($im,mt_rand(0,$w),mt_rand(0,$h),mt_rand(0,$w),mt_rand(0,$h),$black); } for($i=0;$i<4;$i++){ imageline($im,mt_rand(0,$w),mt_rand(0,$h),mt_rand(0,$w),mt_rand(0,$h),$green); } $x=($w-$size*4)/2+$size/2; $y=($h-$size)/2+$size; $arr=array_merge(range(0,9),range(a,z),range(A,Z)); shuffle($arr); $str=join("",array_slice($arr,0,$fontn)); $_SESSION['vstr']=$str; $font='font/CENSCBK.TTF'; imagettftext($im,$size,0,$x,$y,$black,$font,$str); header("content-type:image/png"); imagepng($im); imagedestroy($im); } vcode(100,50,20,4,300);
?>
|