无法创建/显示php图像 - GD图像损坏或截断

时间:2012-12-21 08:14:35

标签: php image gd brokenimage

我遇到了问题,请给我一些帮助。 我使用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上看起来一样。任何想法我可能做错了或为什么会这样?以及如何解决此错误?

2 个答案:

答案 0 :(得分:6)

我发现了一些关于这个错误的信息,最后我想出了发生了什么,所以这里是问题的解决方案:

确保PHP代码是页面上唯一的内容。没有HTML,PHP代码之前或之后没有空格等,它应该发送给浏览器的唯一内容应该是图像数据。如果仍然不起作用,那么请确保以不包含UTF BOM的格式保存PHP脚本,这应该修复它。

答案 1 :(得分:1)

我将代码更改为UTF-8 without BOM并向我工作!谢谢Lykos。