不能创建/显示php图像- GD图像损坏或截断


Can't create/display php images - GD Image corrupt or truncated

我遇到了一个问题,我需要一些帮助。我已经制作了一个脚本,用于使用GD库创建PHP图像,但问题是,当我在Firefox上预览它时,它在Firebug中显示了一个错误:"图像损坏或截断:localhost/my_scripts/images.php"。:这不是PHP显示的错误,它更像是来自浏览器的错误。

我已经检查了我的代码语法很多次,我也尝试过和其他gd函数,如imagegif, imagettftext等,但没有任何效果。下面是我的代码:

//$image = @imagecreate(200, 20)or die("Cannot Initialize new GD image stream");
$image = imagecreate(200, 20);
$background = imagecolorallocate($image,0,0,0);
$foreground = imagecolorallocate($image,255,255,255);
imagestring($image,5,5,1,"This is a Test",$foreground);
header("Content-type: image/jpeg");
imagejpeg($image);
imagedestroy($image);

GD库已启用,我已经在phpinfo()中检查了这一点,我也尝试在Chrome上预览它并看起来相同。有什么想法我可能做错了,或者为什么会发生这种情况?我怎么能解决这个错误??

我发现了一些关于这个错误的东西,最后我弄清楚了发生了什么,所以这里是问题的解决方案:

确保PHP代码是页面上唯一的东西。没有HTML, PHP代码前后没有空格等,它应该发送给浏览器的唯一东西应该是图像数据。如果这仍然不起作用,那么确保将PHP脚本保存为不包含UTF BOM的格式,这应该可以解决这个问题。

我把我的代码改为UTF-8 without BOM,并为我工作!谢谢Lykos。