2017-07-17 178 views
1

我想創建一個從固定大小(400 * 320) 保存在縮略圖文件夾和原始圖像的副本用戶上傳圖像的縮略圖發送到上傳文件夾時,用戶點擊縮略圖。原始圖像出現,但原始圖像上傳的代碼問題是縮略圖的任何解決方案,請相同大小?調整圖像大小固定的規模和保持原始圖像大小

下面是代碼:

function ak_img_resize($target, $newcopy, $w, $h, $ext) { 
    list($w_orig, $h_orig) = getimagesize($target); 

    $img = ""; 
    $ext = strtolower($ext); 
    if ($ext == "gif"){ 
     $img = imagecreatefromgif($target); 
    } else if($ext =="png"){ 
     $img = imagecreatefrompng($target); 
    } else { 
     $img = imagecreatefromjpeg($target); 
    } 
    $w = 400; 
    $h = 320; 
    $tci = imagecreatetruecolor($w, $h); 
    // imagecopyresampled(dst_img, src_img, dst_x, dst_y, src_x, src_y, dst_w, dst_h, src_w, src_h) 
    imagecopyresampled($tci, $img, 0, 0, 0, 0, $w, $h, $w_orig, $h_orig); 
    imagejpeg($tci, $newcopy, 90); 
+0

我發送上傳圖片的代碼並使用resize_img.php文件。請爲我做的IAM沒有開發者,我需要從你把代碼並將其粘貼 –

+0

非常感謝.CODE工作 –

回答

0

想必你是把原來通過此功能,這也許就是因爲你試圖進行壓縮或什麼的,但如果你想原來住原來的大小,只需將上傳文件到它去,然後再在該文件上的成功被移動,使縮略圖副本從移動文件。

如果你想要把原始圖像文件通過你的功能,按比例回的質量也好,都試圖進行這些調整:

# Notice the re-organizing of the params--------vv----------vv 
function ak_img_resize($target, $newcopy, $ext, $w = false, $h = false) 
    { 
     list($w_orig, $h_orig) = getimagesize($target); 
     # If you keep the width empty, take original size 
     if(empty($w)) 
      $w = $w_orig; 
     # If you keep the height empty, take original size 
     if(empty($h)) 
      $h = $h_orig; 

     $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(dst_img, src_img, dst_x, dst_y, src_x, src_y, dst_w, dst_h, src_w, src_h) 
     imagecopyresampled($tci, $img, 0, 0, 0, 0, $w, $h, $w_orig, $h_orig); 
     imagejpeg($tci, $newcopy, 90); 
    } 

使用方法:

#Sized down: 
ak_img_resize($target,$newcopy,$ext,400,320); 

#Original: 
ak_img_resize($target,$newcopy,$ext); 
相關問題