- 论坛徽章:
- 0
|
我将 http://bbs.phpchina.com/thread-105956-1-14.html 七楼的代码做了修改,主要是用 imagettftext 函数替换了 imagestring 函数。部分代码如下:
$imageWeight = 60;
$imageHeight = 20;
$_SESSION["imagecode"] = rand(1000,9999);
$strx = rand(8, 12); //字符横坐标
for($i=0;$i<4;$i++){
$mycolor = ImageColorAllocate($im, rand(0,255), rand(0,255), rand(0,255)); //每个字符使用随机颜色
$myfont ="./uming.ttc"; //linux系统中的一种字体
$strpos=rand(0, 10); //字符纵坐标
//imagestring($im,5,$strx,$strpos, substr($_SESSION["imagecode"], $i, 1), $black);
imagettftext($im, 18, rand(0,30), $strx, $strpos, $mycolor, $myfont, substr($_SESSION["imagecode"], $i, 1));
$strx+=rand(8,12);
}
但是经过实际试验之后,觉得验证码字符位置不理想,不如 cnbeta 评论的那个验证码好。请问:可以怎么改进?谢了先!
![]()
这是 cnbeta 的验证码。 |
|