function ResizeImage($rw, $rh, $source, $stype, $dest) { $size = getimagesize($source); $w = $size[0]; $h = $size[1]; switch($stype) { case 'gif': $simg = imagecreatefromgif($source); break; case 'jpg': $simg = imagecreatefromjpeg($source); break; case 'png': $simg = imagecreatefrompng($source); break; case 'jpeg': $simg = imagecreatefromjpeg($source); break; } $dimg = imagecreatetruecolor($rw, $rh); $wm = $w/$rw; $hm = $h/$rh; $h_height = $rh/2; $w_height = $rw/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,$rh,$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,$rw,$adjusted_height,$w,$h); } else { imagecopyresampled($dimg,$simg,0,0,0,0,$rw,$rh,$w,$h); } imagejpeg($dimg,$dest,100); } $picture = "picture.jpg"; $picture_resize = "pictureresize.jpg"; ResizeImage(200, 150, "$picture", 'jpg', "$picture_resize"); print "