如何使用PHP GD库向图像添加文本

如何使用PHP GD库向图像添加文本,php,html,image,gd,Php,Html,Image,Gd,我在image_creator中有图像创建代码 <?php header("Content-Type: image/jpeg"); $im = ImageCreateFromGif("photo.gif"); $black = ImageColorAllocate($im, 255, 255, 255); $start_x = 10; $start_y = 20; Imagettftext($im, 12, 0, $start_x, $start_y, $black, 'verdana.

我在image_creator中有图像创建代码

<?php
header("Content-Type: image/jpeg");
$im = ImageCreateFromGif("photo.gif"); 
$black = ImageColorAllocate($im, 255, 255, 255);
$start_x = 10;
$start_y = 20;
Imagettftext($im, 12, 0, $start_x, $start_y, $black, 'verdana.ttf', "text to write");
Imagejpeg($im, '', 100);
ImageDestroy($im);
?> 

用于图像输出的文件是image.php,包含以下代码

<html>
<head>
</head>
<body>
    <img src="http://localhost/image_creator.php"/> 
</body>

</html>


当我运行image.php时,我只得到一个空白页面。为什么会这样?

使用此选项将文本添加到图像中(复制自)


这里的问题是,
$black=ImageColorAllocate($im,255,255,255)//首先
$black=ImageColorAllocate($im,255,255)-这是白色的,不是黑色的。你有错误吗?查看错误日志?@iMoses我认为
$black
只是因为他从php.net复制了代码:没有正确性或意义。我相信他们是对的。这不是问题,只是让人困惑。“空白”图像可能只是白色背景上的白色。我从白色改为黑色,但仍然存在相同的问题!!我认为Imagettftext找不到“verdana.ttf”文件,尽管所有内容都在同一个文件夹中..然后尝试将字体文件设置为
/verdana.ttf
。您刚刚从中粘贴了它,并尝试指出问题,请同时引用您的来源。。。否则就是剽窃。我已经在引文中添加了。如果我想在发送到浏览器之前在同一图像上添加几行文本,是否需要添加几个
imagettftext()
函数?此外,我如何将此图像保存到服务器中的实际目录中,以便用户可以随时打印它?由于某些原因,该代码不适用于png,当然要更改文件和函数名
<?php
//Set the Content Type
header('Content-type: image/jpeg');

// Create Image From Existing File
$jpg_image = imagecreatefromjpeg('sunset.jpg');

// Allocate A Color For The Text
$white = imagecolorallocate($jpg_image, 255, 255, 255);

// Set Path to Font File
$font_path = 'font.TTF';

// Set Text to Be Printed On Image
$text = "This is a sunset!";

// Print Text On Image
imagettftext($jpg_image, 25, 0, 75, 300, $white, $font_path, $text);

// Send Image to Browser
imagejpeg($jpg_image);

// Clear Memory
imagedestroy($jpg_image);
?>
$black = ImageColorAllocate($im, 0, 0, 0);