php - 在调用 captcha.php 时,我的验证码图像未显示

  显示原文与译文双语对照的内容
0 0

我试图在页面上创建自己的验证码,但这个php代码不会在网页上显示我的码像图像。 所以任何suggetion都是好的。 这是我的captcha.php

 <?php 
 session_start();
//generate random number and store in session
 $randomnr = rand(1000, 9999);
 $_SESSION['randomnr2'] = md5($randomnr);
//generate image
 $im = imagecreatetruecolor(100, 38);
//colors:
 $white = imagecolorallocate($im, 255, 255, 255);
 $grey = imagecolorallocate($im, 128, 128, 128);
 $black = imagecolorallocate($im, 0, 0, 0);
 imagefilledrectangle($im, 0, 0, 200, 35, $black);
//------------- your fontname -------------
//example font http://www.webpagepublicity.com/free-fonts/a/Anklepants.ttf
 $font = 'Anklepants.ttf';
//draw text:
 imagettftext($im, 35, 0, 22, 24, $grey, $font, $randomnr);
 imagettftext($im, 35, 0, 15, 26, $white, $font, $randomnr);
//prevent client side caching
 header("Expires: Wed, 1 Jan 2015 00:00:00 GMT");
 header("Last-Modified:". gmdate("D, d M Y H:i:s")." GMT");
 header("Cache-Control: no-store, no-cache, must-revаlidate");
 header("Cache-Control: post-check=0, pre-check=0", false);
 header("Pragma: no-cache");
//send image to browser
 header ("Content-type: image/PNG");
 imagegif($im);
 imagedestroy($im);
?>

以及我的html代码来显示验证码它是试用代码。

<!doctype html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>books Collection</title>
 </head>
 <body>
 <div> 
 <form>
 <img src="captcha.php"/></br>
 <img src="captcha.png"/></br>
 <input type="text" name="answer" placeholder="Enter captcha here"/>
 <input type="submit" value="CHECK"/>
 </form>
 </div>
 </body>
 </html>
时间:原作者:2个回答

0 0

你的ttf 字体肯定有问题。 尝试使用其他字体文件或者字体大小太大或者太小。 我用另一个字体 Akashi.ttf 测试了你的脚本。 下面是屏幕截图:

Screenshot

原作者:
...