Crop Gambar dengan PHP


crop

Halo semua para pembaca setia artikel adit. Tutorial kali ini akan bermain-main dengan image. Jadi jangan lupa siapkan dulu sebuah image untuk dijadikan kelinci percobaan :-D … Siapkan sebuah gambar dengan nama “gambar1.jpg”. Letakkan gambar ini dalam satu folder dengan file PHPnya. Setelah itu buat script PHP dengan nama “crop.php”. Jika sudah, ketikkan script berikut :

crop.php

<?php

// temtukan lebar, tinggi, file yang mau dicrop, format nama file, dan penempatan foto setelah di crop

function cropImage($nw, $nh, $source, $stype, $dest) {

$size = getimagesize($source); // ukuran gambar

$w = $size[0];

$h = $size[1];

switch($stype) { // format gambar

case ‘gif’:

$simg = imagecreatefromgif($source);

break;

case ‘jpg’:

$simg = imagecreatefromjpeg($source);

break;

case ‘png’:

$simg = imagecreatefrompng($source);

break;

}

$dimg = imagecreatetruecolor($nw, $nh); // menciptakan image baru

$wm = $w/$nw;

$hm = $h/$nh;

$h_height = $nh/2;

$w_height = $nw/2;

if($w> $h) {

$adjusted_width = $w / $hm;

$half_width = $adjusted_width / 2;

$int_width = $half_width – $w_height;

imagecopyresampled($dimg,$simg,-$int_width,0,0,0,$adjusted_width,$nh,$w,$h);

} elseif(($w <$h) || ($w == $h)) {

$adjusted_height = $h / $wm;

$half_height = $adjusted_height / 2;

$int_height = $half_height – $h_height;

imagecopyresampled($dimg,$simg,0,-$int_height,0,0,$nw,$adjusted_height,$w,$h);

} else {

imagecopyresampled($dimg,$simg,0,0,0,0,$nw,$nh,$w,$h);

}

imagejpeg($dimg,$dest,100);

}

$gambar = “gambar1.jpg”;

$gambar_crop = “gambar1crop.jpg”;

// jalankan fungsi crop gambar

// lebar, tinggi, file yang di crop, format gambar, nama file setelah di crop

cropImage(225, 165, “$gambar”, ‘jpg’, “$gambar_crop”);

print “<h2>Image sebelum di crop : <br> <img src=$gambar> <br><br>”;

print “Image setelah di crop : <br> <img src=$gambar_crop>”;

?>

Selamat mencoba………

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: