驗證碼還是一個x顯示,出不來呢
/*** 驗證碼 ***/
require_once'string.func.php';
//通過GD庫做驗證碼
function verifyImage($type=1,$length=4,$pixel=0,$line=0,$sess_name = "verify"){
//創建畫布
$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 );
$chars = buildRandomString ( $type, $length );
$_SESSION [$sess_name] = $chars;
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 );
$color = imagecolorallocate ( $image, mt_rand ( 50, 90 ), mt_rand ( 80, 200 ), mt_rand ( 90, 180 ) );
$text = substr ( $chars, $i, 1 );
imagestring ( $image, $size, $angle, $x, $y, $color,$text );
}
if ($pixel) {
for($i = 0; $i < 50; $i ++) {
imagesetpixel ( $image, mt_rand ( 0, $width - 1 ), mt_rand ( 0, $height - 1 ), $black );
}
}
if ($line) {
for($i = 1; $i < $line; $i ++) {
$color = imagecolorallocate ( $image, mt_rand ( 50, 90 ), mt_rand ( 80, 200 ), mt_rand ( 90, 180 ) );
imageline ( $image, mt_rand ( 0, $width - 1 ), mt_rand ( 0, $height - 1 ), mt_rand ( 0, $width - 1 ), mt_rand ( 0, $height - 1 ), $color );
}
}
ob_clean();
header ( "content-type:image/gif" );
imagegif ( $image );
imagedestroy ( $image );
}
幫我看看哪里錯了
2017-01-04
imagestring ( $image, $size, $angle, $x, $y, $color,$text );
你試著把這個函數改為
imagettftext($image, $size, $angle, $x, $y, $color,$fontfile
,$text)
然后把字體文件也加進去
如果用的mac就在資源庫中的Fonts文件夾中找,windows就按照老師的方法