Minggu, 27 Oktober 2013

Cara Membuat Thumbnail dengan Resize dan Crop Image PHP

Cara Membuat Thumbnail dengan Resize dan Crop Image PHP. Thumbnail merupakan gambar kecil atau seperti icon yang merupakan hasil resize men... thumbnail 1 summary
Cara Membuat Thumbnail dengan Resize dan Crop Image PHP. Thumbnail merupakan gambar kecil atau seperti icon yang merupakan hasil resize menjadi ukuran lebih kecil dari gambar aslinya. Masalahnya ketika dengan mengubah ukuran jika gambar tersebut yang tidak persegi atau gambar bisa lebih panjang atau lebih maka akan menghasilkan gambar yang tidak bagus atau perbandingan antara panjang dan lebar tidak sama dengan aslinya.

Untuk 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.
Coba perhatikan ilustrasi membuat thumbnail dari gambar yang persegi panjang di bawah:

Kode PHP Thumbnail
Setelah mengetahui konsep pembuatan thumbnail di atas, mari kita buat kode PHP. Kita perlu menambahkan library dengan 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

resizethumb.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);

?>
Untuk menjalankannya gunakan kode HTML berikut <img src="resizethumb.php">
Download Source Code Thumbnail PHP

Tidak ada komentar

Posting Komentar

Review diatas adalah kutipan dari website yang ada di internet dikemas menjadi informasi yang bermanfaat bagi kita semua. setiap post ada link sumber. Lengkapnya baca Disclaimer