Upload Gambar Dengan Teknik Resize Resolution

20 views

Selamat Malam Sahabat, kali ini masih sama dengan tutorial-tutorial sebelumnya, masih membahas wacana image processing pada PHP. “Upload Gambar dengan teknik Resize Resolution”, langkah-langkah pada teknik ini sebagai berikut :

  1. Upload Gambar Asli Dengan Resolusi Original
  2. Membuat Salinan Gambar dengan Costumize Resolution
  3. Menghapus gambar orisinil dari direktori
Oke eksklusif aja kita siapkan kebutuhan-kebutuhan. Disini hanya memakai sebuah file index.php dan sebuah folder “image”
Upload_Image/
   —image/
   —index.php
 
folder image dipakai untuk penyimpanan gambar sesudah dilakukan proses upload.
 
file index.php sebagai berikut :
<?phpfunction UploadImageResize($new_name,$file,$dir,$width){ //direktori gambar $vdir_upload = $dir; $vfile_upload = $vdir_upload . $_FILES[''.$file.'']["name"]; //Simpan gambar dalam ukuran bekerjsama move_uploaded_file($_FILES[''.$file.'']["tmp_name"], $dir.$_FILES[''.$file.'']["name"]); //identitas file orisinil $im_src = imagecreatefromjpeg($vfile_upload); $src_width = imageSX($im_src); $src_height = imageSY($im_src); //Set ukuran gambar hasil perubahan $dst_width = $width; $dst_height = ($dst_width/$src_width)*$src_height; //proses perubahan ukuran $im = imagecreatetruecolor($dst_width,$dst_height); imagecopyresampled($im, $im_src, 0, 0, 0, 0, $dst_width, $dst_height, $src_width, $src_height); //Simpan gambar imagejpeg($im,$vdir_upload . $new_name,100);  //Hapus gambar di memori komputer imagedestroy($im_src); imagedestroy($im); $remove_small = unlink("$vfile_upload"); }?>

diatas terdapat sebuah fungsi dengan nama UploadImageResize($new_name,$file,$dir,$width) yang terdiri beberapa parameter berikut :

  • $new_name = ialah variable nama file gres dari sebuah gambar 
  • $file = ialah name dari input dengan type file 
  • $dir = ialah direktory penyimpanan gambar
  • $width = ialah variable yang berfungsi mengatur ukuran kompresi gambar
dengan fungsi tersebut, aktivitas akan melaksanakan proses upload image, kemudian sesudah berhasil diupload, aktivitas akan membaca dimensi orisinil dari gambar yang diupload dengan fungsi berikut
 
 

 

//identitas file asli$im_src = imagecreatefromjpeg($vfile_upload);$src_width = imageSX($im_src);$src_height = imageSY($im_src);

fungsi imagecreatefromjpeg berfungsi menciptakan salinan gambar dari file asli, fungsi imageSX berfungsi mengambil lebar gambar, fungsi imageSY mengambil tinggi gambar. sesudah mendapat gosip orisinil dari sebuah gambar, langkah selanjutnya ialah melaksanakan perhitungan kompresi gambar dengan fungsi berikut :

//Set ukuran gambar hasil perubahan$dst_width = $width;$dst_height = ($dst_width/$src_width)*$src_height;

variable $dst_width akan berisi sesuai dengan parameter yang diberikan dikala pemanggilan fungsi, sedangkan variable $dst_height merupakan perhitungan proporsional dari ukuran orisinil terhadap ukuran yang dikopresi. Untuk mendapat ukuran tinggi yang sesuai dengan lebar yang ditentukan maka dilakukan perhitungan. Ukuran lebar yang di seting dibagi dengan ukuran orisinil gambar kemudian dibagi dengan tinggi orisinil gambar. maka didapatlah tinggi yang akan sesuai dengan lebar yang ditentukan, sehingga keluaran gambar tidak akan rusak, masih sama dengan proporsional aslinya, namun resolusi keluaran niscaya akan berbeda.

kemudian langkah berikutnya ialah menciptakan gambar gres dari salinan yang telah dibentuk dengan lebar dan tinggi yang sudah di kompres sesuai harapan dengan fungsi berikut :

//proses perubahan ukuran$im = imagecreatetruecolor($dst_width,$dst_height);imagecopyresampled($im, $im_src, 0, 0, 0, 0, $dst_width, $dst_height, $src_width, $src_height);
//Simpan gambarimagejpeg($im,$vdir_upload . $new_name,100);

sesudah berhasil menciptakan gambar gres dengan resolusi yang baru, maka proses pembuatan gambar gres akan dihapus dari memori dan dihapus dari direktori memakai fungsi :

//Hapus gambar di memori komputerimagedestroy($im_src);imagedestroy($im);$remove_small = unlink("$vfile_upload");

untuk memakai fungsi ini, tentunya memakai HTML untuk menciptakan form upload gambar sebagai berikut :

<form action ="" method="POST" enctype="multipart/form-data"><input type="file" name="foto" accept="image/JPEG"/><input type="submit" name="upload" value="upload"/></form>

jangan pernah melupakan atribute enctype=”multipart/form-data” dikala ingin melaksanakan proses upload file pada sebuah form.

kemudian cara menjalankan fungsi tersebut sebagai berikut :

if(isset($_POST['upload'])){ $new_name=time().'.jpg'; $file='foto'; //name pada inputan type file $dir='image/'; $width=400;//satuan dalam pixel / px UploadImageResize($new_name,$file,$dir,$width);}

artinya aktivitas akan mengeksekui perintah ketika tombol submit diklik atau variable $_POST[‘upload’] telah ada pada memeory. kemudian deklarasikanlah parameter-parameter yang akan diproses,

hasil befor after gambar hasil kompresi sebagai berikut :

Dari resolusi 3000px menjadi 400px. Happy Coding. Selamat malam, selamat menanti tutorial berikutnya

Download Code Updated Link

Author: 
    author
    No related post!