2013-03-13 128 views
0

我創建PNG圖像的thumnail時出現問題。PHP:imagepng()創建破碎的圖像

這工作:

$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); 

然後我改變了2個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); 

但當時的形象被打破,此消息顯示當我嘗試打開它:

Error message

如何解決這個任何想法?

+0

幾乎所有的GD函數在失敗時都返回'false',所以你應該檢查'imagecreatefrompng'等的返回值,以確定它出錯的地方。 – jeroen 2013-03-13 01:45:56

+0

你的頭文件內容類型行在哪裏? – Popnoodles 2013-03-13 01:48:23

+0

@popnoodles當您將圖像保存到文件時,這不是必需的。 – jeroen 2013-03-13 01:50:16

回答