2013-04-14 77 views
0

我編寫了一個經過測試的工作代碼,用於縮小圖像大小,即在上載圖像時從一個文件夾複製到另一個文件夾。它將圖像尺寸縮小到300和300的高度。將圖像複製到多個文件夾中

我還希望將相同的圖像尺寸縮小到100和100的寬度,因此我可以將最小的圖像用作配置文件圖片和電子郵件收件箱圖像。而另一個則在用戶相冊上的300和高度300的圖像上。

我要上傳的圖像複製到的寬度300 2個不同大小和高度300和100和高度100

請幫助我。

  if(move_uploaded_file($this->tem_path, $terger_path)){     
       $exe = explode(".", $this->filename); 
       $ext = $exe[1]; 
       $w = 300; 
       $h = 300; 
       $target = SITE_ROOT.DS.$this->img_path.DS.$this->filename;    
       $newcopy = SITE_ROOT.DS.$this->resize.DS.$this->filename; 
       list($w_orig, $h_orig) = getimagesize($target); 
       $scale_ratio = $w_orig/$h_orig; 
       if (($w/$h) > $scale_ratio) { 
        $w = $h * $scale_ratio; 
       } else { 
        $h = $w/$scale_ratio; 
       } 
       $img = ""; 
       $ext = strtolower($ext); 
       if ($ext == "gif"){ 
        $img = imagecreatefromgif($target); 
       } else if($ext =="png"){ 
        $img = imagecreatefrompng($target); 
       } else { 
        $img = imagecreatefromjpeg($target); 
       } 
       $tci = imagecreatetruecolor($w, $h); 
       imagecopyresampled($tci, $img, 0, 0, 0, 0, $w, $h, $w_orig, $h_orig); 
       if(@imagejpeg($tci, $newcopy, 80)){ 
       // return true; 
        $terger_path = SITE_ROOT.DS.$this->img_path.DS.$this->filename; 
        return unlink($terger_path) ? true : false;      
       }     

      } 

回答

0

嗯,這是很容易:

  1. 先做調整大小,將它複製到第一位置。不要刪除上傳的文件。
  2. 做第二次調整大小,複製到其他位置。
  3. 用清潔完成(如有必要)
相關問題