Jumat, 23 Maret 2012

Cara Mudah Membuat Thumbnail dengan PHP dengan Cara Resize dan Crop Image

Thumbnail merupakan gambar kecil atau seperti icon yang merupakan hasil resize menjadi ukuran lebih kecil dari gambar aslinya. Secara sederhana untuk membuat thumbnail, kita cukup merubah ukuran gambar menjadi lebih kecil. Tetapi yang jadi masalah adalah kalau mentah-mentah diubah ukurannya, maka jika gambar yang tidak persegi (gambarnya bisa lebih panjang atau lebih tinggi) akan menghasilkan gambar yang tidak bagus atau perbandingan antara panjang dan lebar tidak sama dengan aslinya.
Untuk mengatasi gambar yang persegi panjang, supaya menghasilkan thumbnail yang bagus, maka yang perlu dilakukan adalah:
  1. Resize gambar, dengan perbandingan panjang dan lebarnya sama dengan aslinya
  2. Crop gambar di tengah-tengah.

Kode PHP Thumbnail

Setelah mengetahui konsep pembuatan thumbnail di atas, mari kita buat kode PHP nya. Di sini kita akan menggunakan GD Functions yang ada di PHP. Untuk menggunakan fungsi GD ini, pastikan anda sudah mengaktifkan GD library. Caranya edit file php.ini, lalu cari baris ;extension=php_gd2.dll, hilangkan tanda titik komanya. Restart kembali web server anda.


Berikut kode PHP untuk membuat thumbnail
drzthumb.php
<?php

// Gambar aslinya
$filename = 'gambar.jpg';

// ambil ukuran asli image
list($lebar_asli, $tinggi_asli) = getimagesize($filename);

$persegi = 200; //ukuran thumbnail, artinya 200 x 200;

$canvas = imagecreatetruecolor($persegi, $persegi);
$current_image = imagecreatefromjpeg($filename);

if($lebar_asli > $tinggi_asli){
    $tinggi = $persegi;
    $lebar =  ceil(($persegi/$tinggi_asli) * $lebar_asli);
    $x = ceil(($lebar/2) - ($persegi/2));
    imagecopyresized($canvas, $current_image, 0, 0, $x, 0, $lebar, $tinggi, $lebar_asli, $tinggi_asli);
}else{
    $lebar = $persegi;
    $tinggi = ceil(($persegi/$lebar_asli) * $tinggi_asli);
    $y = ceil(($tinggi/2) - ($persegi/2));
    imagecopyresized($canvas, $current_image, 0, 0, 0, $y, $lebar, $tinggi, $lebar_asli, $tinggi_asli);
}

header('Content-type: image/jpeg');

imagejpeg($canvas);

imagedestroy($canvas);

?>

Downloadselangkapnya


trims ..codingwear 

oleh fsakti FASANA IT | Tutorial Computer Updated at : 22.50
Anda suka artikel di atas ???
Klik salah satu atau ketiga tombol di bawah ini :

Jangan Lupa Baca Juga :

1 komentar:

kalo yang dari database gimna..??

 
Ke bawah Ke ATAS