[PHP] 縮圖
Sample code
<?php /** * @file name Resizing Images in PHP * @create date 20160229 */ if(isset($_POST["submit"])) { $v_upload_ok = 1; $v_target_dir = "file/"; // 欲上傳存放的目錄位置 $v_upload_file = $_FILES['uploaded_file']; // 上傳檔案 $v_file_name = $v_upload_file["name"]; // 檔案原始名稱 $v_file_type = $v_upload_file["type"]; // 檔案類型 $v_file_size = $v_upload_file["size"]; // 檔案原始大小 $v_explode = explode(".", $v_file_name); $v_file_ext = end( $v_explode ); // 檔案副檔名 $v_file_tmp = $v_upload_file["tmp_name"]; // 檔案暫存資料夾位置 $v_file_error = $v_upload_file["error"]; // 檔案上傳錯誤代碼顯示 // echo "<pre>"; // print_r($v_upload_file); // echo "</pre>"; $v_target_file = $v_target_dir . "target.".$v_file_ext; $v_resized_file = $v_target_dir . "resize.".$v_file_ext; $check = getimagesize($v_file_tmp); if( $check !== false ) { echo "<h2>File is an image - " . $check["mime"] . "." . "</h2>"; move_uploaded_file($v_file_tmp, $v_target_file); image_resize($v_target_file, $v_resized_file, 150, 150, $v_file_ext); $v_upload_ok = 1; } else { echo "<h2>File is not an image.</h2>"; $v_upload_ok = 0; } echo "<h2>"; echo ($v_upload_ok == 0) ? ("Upload failed !") : ("Upload Successful !"); echo "</h2>"; } //end function image_resize($target, $newcopy, $w, $h, $ext) { 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); imagejpeg($tci, $newcopy, 80); } ?> <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>example</title> </head> <body> <form action="example.php" method="post" enctype="multipart/form-data"> Select image to upload: <input type="file" name="uploaded_file"> <input type="submit" value="Upload Image" name="submit"> </form> </body> </html>
Source
☞ Image Resize Function Tutorial jpg gif png Change Size (**範例來源)☞ php實現的非常好用的圖片大小調整(image resize)函數
☞ Função imagecopyresampled() do PHP cortando no lugar errado
☞ PHP 5 File Upload
沒有留言: