1

所以我正在尝试为我的注册表单制作一个验证码表格,但我不确定出了什么问题,因为每当我打开页面时,我都会看到在找不到图像的 url 时显示的图像(我会发布一张图片,但我不能,因为这是我的第一个问题)。

我不确定我做错了什么,因为我在制作教程时正在遵循教程,它似乎对他们有用。此外,没有显示任何错误,所以我不知道可能出了什么问题。我的代码在这里:

<?php
session_start();
header('Content-type: image/jpeg');

$text = 4539;
$font_size = 4;
$image_height = 40;
$image_width = 200;
$image = imagecreate($image_width, $image_height);
imagecolorallocate($image, 255, 255, 255);
$font_colour = imagecolorallocate($image, 0, 0, 0);
// Set the enviroment variable for GD
putenv('GDFONTPATH=' . realpath('.'));

// Name the font to be used (note the lack of the .ttf extension)
$font = 'font';
imagettftext($image, 0, 15, 30, $font_colour, $font, $text);
?>

此外,当我知道代码有效时,$text 变量将被设置为随机,该值是静态的,用于测试目的。我会很感激我能得到的任何帮助。提前致谢

4

1 回答 1

1

添加文本后,您需要将图像输出到浏览器:

imagettftext($image, 0, 15, 30, $font_colour, $font, $text);
imagepng($image);
imagedestroy($image);

由于脚本完成后 php 进程退出,因此可能并不严格需要销毁,但示例中有它,所以我将其包含在内。

此外,您可以使用或选择 png、gif 和 jpeg 图像imagepng()格式。png格式在这里应该很好。imagegif()imagejpeg()

于 2013-02-04T08:09:07.180 回答