负面调整大小的图像

时间:2012-06-23 12:34:31

标签: php

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

我的问题是这个脚本会生成负片(如负片 [只有.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);

1 个答案:

答案 0 :(得分:0)

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