PHP:imagepng()创建断开的图像

PHP:imagepng()创建断开的图像,php,image,png,Php,Image,Png,我在创建PNG图像的thumnail时遇到问题 这项工作: $src = imagecreatefromjpeg("http://www.gaze.se/".$folder.$filename); $rootfolder = $_SERVER['DOCUMENT_ROOT'] ; $tmp = imagecreatetruecolor($targ_w, $targ_h); imagecopyresampled($tmp, $src, 0,0,$_POST['x']

我在创建PNG图像的thumnail时遇到问题

这项工作:

    $src = imagecreatefromjpeg("http://www.gaze.se/".$folder.$filename);
    $rootfolder = $_SERVER['DOCUMENT_ROOT'] ;
    $tmp = imagecreatetruecolor($targ_w, $targ_h);
    imagecopyresampled($tmp, $src, 0,0,$_POST['x'],$_POST['y'],$targ_w,$targ_h,$_POST['w'],$_POST['h']);
    imagejpeg($tmp, $rootfolder.$folder.'thumb_'.$filename,100);

    imagedestroy($tmp);
    imagedestroy($src);
然后我将两个jpeg函数更改为png,如下所示:

    $src = imagecreatefrompng("http://www.gaze.se/".$folder.$filename);
    $rootfolder = $_SERVER['DOCUMENT_ROOT'] ;
    $tmp = imagecreatetruecolor($targ_w, $targ_h);
    imagecopyresampled($tmp, $src, 0,0,$_POST['x'],$_POST['y'],$targ_w,$targ_h,$_POST['w'],$_POST['h']);
    imagepng($tmp, $rootfolder.$folder.'thumb_'.$filename,100);

    imagedestroy($tmp);
    imagedestroy($src);
但随后图像被破坏,当我尝试打开它时,会显示以下消息:


有什么办法解决这个问题吗?

请查看。对于PNG文件,$quality参数应为0到9。正如@jeroen所说,您应该检查返回值。

几乎所有GD函数在失败时都返回false,因此您应该检查imagecreatefrompng的返回值,等等,看看它到底出了什么问题。你的标题内容类型行在哪里?@popleak当你将图像保存到文件时,这不是必需的。哦,对不起,我没有正确阅读它