您的位置:首页 > 编程语言 > PHP开发

PHP 验证码可设置字体(大小),可换背景图片,可扭曲角度

2012-06-11 13:15 603 查看
//若以下代码有错或不足,请在评论中指出

$img=imagecreatetruecolor(70,25); //创建画布

$bgimg=imagecreatefromjpeg("backgroud/background".rand(1,8).'.jpg');
//生成背景图片

$bg_x=rand(0,130); //随机招贴画布起始X轴坐标

$bg_y=rand(0,55); //随机招贴画布起始Y轴坐标

imagecopy($img,$bgimg,0,0,$bg_x,$bg_y,$bg_x+70,$bg_y+25);
//把背景图片$bging粘贴的画布上

//生成随机字符串

function creaStr($len){

$arr1=range(0,9);

$arr2=range(a,z);

$arr3=range(A,Z);

$arr=array_merge($arr1,$arr2,$arr3);

str_shuffle($arr);

$str="";

for($i=0;$i<$len;$i++){

$str.=$arr[rand(0,61)];

}

return $str;

}

$font='Astarisborn.TTF'; //字体

$str=creaStr(4); //字符串

for($i=0,$j=5;$i<4;$i++){

$array = array(-1,1);

$p = array_rand($array);

$an = $array[$p]*mt_rand(1,10); //扭曲角度

$size = 14;//字体大小

imagettftext($img, $size, $an, $j,rand(13,20),imagecolorallocate($img,rand(0,100),rand(0,100),rand(0,100)), $font, $str[$i]);//生成验证字符窜

$j+=15;

}

header('Content-type:image/png');

imagepng($img);

imagedestroy($img);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐