//image.fun.php
<?php
require_once?'string.func.php';
//通過GD庫做驗證碼
//創建畫布
$width=80;
$height=28;
$image=??imagecreatetruecolor($width,?$height);
$white=??imagecolorallocate($image,?255,?255,?255);
$black=??imagecolorallocate($image,?0,?0,?0);
//用填充矩形填充畫布
imagefilledrectangle($image,?1,?1,?$width-2,?$height-2,?$white);
$type=1;
$length=4;
$chars?=?buildRandomString?(?$type,?$length?);
$sess_name="verify";
$_SESSION['$sess_name']=$chars;
$fontfiles?=?array?("SIMLI.TTF",?"SIMYOU.TTF",?"SIFAHGSO.TTF",?"STHUPO",?"SIXINGKA.TTF");
for($i=0;$i<$length;$i++){
????$size=mt_rand(14,18);
????$angle=??mt_rand(-15,?15);
????$x=5+$i*$size;
????$y=??mt_rand(20,26);
????$fontfile="../fonts/".$fontfile[mt_rand(0,count($fontfiles)-1)];
????$color=??imagecolorallocate($image,?mt_rand(50,?90),??mt_rand(80,?200),?mt_rand(90,?180));
????$text=substr($chars,$i,1);
????imagettftext($image,?$size,?$angle,?$i,?$height,?$width,?$sess_name,?$text);
}
header("content-type:image/gif");
imagegif($image);
imagedestroy($image);
//string.func.php
<?php
function?buildRandomString($type=1,$length=4){
if?($type?==?1)?{
$chars?=?join?(?"",?range?(?0,?9?)?);
}?elseif?($type?==?2)?{
$chars?=?join?(?"",?array_merge?(?range?(?"a",?"z"?),?range?(?"A",?"Z"?)?)?);
}?elseif?($type?==?3)?{
$chars?=?join?(?"",?array_merge?(?range?(?"a",?"z"?),?range?(?"A",?"Z"?),?range?(?0,?9?)?)?);
}
if?($length?>?strlen?(?$chars?))?{
exit?(?"字符串長度不夠"?);
}
$chars?=?str_shuffle?(?$chars?);
return?substr?(?$chars,?0,?$length?);
}
2014-12-03
你檢查下你的項目中有這個字體文件嘛?如果沒有需要把它放進來才行
^-^...
2014-12-04
額....