Image Cropping

Hey guys, I have this script for resizing images that has worked for me fine up till now, I want it be able to crop images to certain sizes mainly for thumbnails etc. I wondered if anyone could take a look? I have been on the net looking for hours now trying to learn how to do it but it keeps going wrong…

[php]<?php
function Resize_Image($save,$file,$t_w,$t_h,$s_path,$o_path) {
$s_path = trim($s_path);
$o_path = trim($o_path);
$save = $s_path . $save;
$file = $o_path . $file;
$ext = strtolower(end(explode(’.’,$save)));
list($width, $height) = getimagesize($file) ;
if(($width>$t_w) OR ($height>$t_h)) {
$r1 = $t_w/$width;
$r2 = $t_h/$height;
if($r1<$r2) {
$size = $t_w/$width;
}else{
$size = $t_h/$height;
}
}else{
$size=1;
}
$modwidth = $width * $size;
$modheight = $height * $size;
$tn = imagecreatetruecolor($modwidth, $modheight) ;
switch ($ext) {
case ‘jpg’:
case ‘jpeg’:
$image = imagecreatefromjpeg($file) ;
break;
case ‘gif’:
$image = imagecreatefromgif($file) ;
break;
case ‘png’:
$image = imagecreatefrompng($file) ;
break;
}
imagecopyresampled($tn, $image, 0, 0, 0, 0, $modwidth, $modheight, $width, $height) ;
imagejpeg($tn, $save, 100) ;
return;
}

$file = $newfile;
$filename = $dir . $file;

/* Photoviewer Picture */
$save = $filename;
$t_w = 590;
$t_h = 347;
$o_path = “upload/”;
$s_path = “upload/newfile/”;

Resize_Image($save,$file,$t_w,$t_h,$s_path,$o_path);

/* Profile Picture */
$t_w = 380;
$t_h = 137;
$o_path = “upload/newfile/”;
$s_path = “upload/profpic/”;

Resize_Image($save,$file,$t_w,$t_h,$s_path,$o_path);

/* Photogallery Picture */
$t_w = 130;
$t_h = 130;
$o_path = “upload/newfile/”;
$s_path = “upload/photogallery/”;

Resize_Image($save,$file,$t_w,$t_h,$s_path,$o_path);

/* Thumbnail Picture */
$t_w = 50;
$t_h = 50;
$o_path = “upload/newfile/”;
$s_path = “upload/thumb/”;

Resize_Image($save,$file,$t_w,$t_h,$s_path,$o_path);
?>[/php]

Sorry I forgot to login earlier :confused: Any help on this issue would be greatly appreciated!

Sponsor our Newsletter | Privacy Policy | Terms of Service