2012-06-23 124 views
0

这是我用来重新调整图像大小的脚本。 负面调整大小的图像

我的问题是,此脚本生成负面图像(如负片[只有.png文件])。哪里/有什么问题?

我用GD库重新调整图像的大小,但我得到了相同的结果。

 $dir = "../images/sliderimages/"; 
     $photo = $_FILES['slid_image_upload']['name']; 
     $tmp_name = $_FILES['slid_image_upload']['tmp_name']; 
     $filename = $dir.$photo; 
    $dir_thm = "../images/thm_sliderimages/"; 
    $thm_filename = $dir_thm.'thm_'.$photo; 

     /************Resizing the image***************/ 


     $size = getimagesize($tmp_name); 

     $width = $size[0]; 

     $height = $size[1]; 

     $newheight = 200; 
     $newwidth = 420; 

    $newheight_thm = 50; 
     $newwidth_thm = 80; 

     $tmp=imagecreatetruecolor($newwidth,$newheight); 
     $tmp_thm=imagecreatetruecolor($newwidth_thm, $newheight_thm); 
     if($size[2] == IMAGETYPE_GIF) 

     { 

     $src = imagecreatefromgif($tmp_name); 

     imagecopyresampled($tmp,$src, 0,0,0,0, $newwidth, $newheight, $width, $height); 
     imagecopyresampled($tmp_thm, $src, 0,0,0,0, $newwidth_thm, $newheight_thm, $width, $height); 
     imagegif($tmp,$filename,100); 
     imagegif($tmp_thm,$thm_filename,100); 

     } 

     elseif($size[2] == IMAGETYPE_JPEG) 

     { 

     $src = imagecreatefromjpeg($tmp_name); 

     imagecopyresampled($tmp,$src,0,0,0,0,$newwidth,$newheight,$width,$height); 
     imagecopyresampled($tmp_thm, $src, 0,0,0,0, $newwidth_thm, $newheight_thm, $width, $height); 
     imagejpeg($tmp,$filename,100); 
     imagejpeg($tmp_thm,$thm_filename,100); 
     } 

     elseif($size[2] == IMAGETYPE_PNG) 

     { 

     $src = imagecreatefrompng($tmp_name); 

     imagecopyresampled($tmp,$src,0,0,0,0,$newwidth,$newheight,$width,$height); 
     imagecopyresampled($tmp_thm, $src, 0,0,0,0, $newwidth_thm, $newheight_thm, $width, $height); 
     imagepng($tmp,$filename,9); 
     imagepng($tmp_thm,$thm_filename,9); 

     } 
     imagedestroy($src); 

     imagedestroy($tmp); 

回答

0

我建议你试试你在另一台服务器\本地机器上的代码,以确保它不是当前的库安装问题。

+0

: - 好的,我会在另一台机器上试用 – user1476767