|  | Posted by Geuis on 08/28/06 18:34 
Hi, new to the group.
 I use the following code to resize images my users upload. They're
 either blurry or they're jaggy.
 
 Can someone recommend modifications or different code that will resize
 images smoothly?
 
 $o_file = $_GET['add'];
 
 $image_info = getImageSize($o_file); // see EXIF for faster way
 
 switch ($image_info['mime']) {
 case 'image/gif':
 if (imagetypes() & IMG_GIF)  { // not the same as IMAGETYPE
 $o_im = imageCreateFromGIF($o_file);
 } else {
 $ermsg = 'GIF images are not supported<br />';
 }
 break;
 case 'image/jpeg':
 if (imagetypes() & IMG_JPG)  {
 $o_im = imageCreateFromJPEG($o_file);
 } else {
 $ermsg = 'JPEG images are not supported<br />';
 }
 break;
 case 'image/png':
 if (imagetypes() & IMG_PNG)  {
 $o_im = imageCreateFromPNG($o_file);
 } else {
 $ermsg = 'PNG images are not supported<br />';
 }
 break;
 case 'image/wbmp':
 if (imagetypes() & IMG_WBMP)  {
 $o_im = imageCreateFromWBMP($o_file);
 } else {
 $ermsg = 'WBMP images are not supported<br />';
 }
 break;
 default:
 $ermsg = $image_info['mime'].' images are not supported<br
 />';
 break;
 }
 
 if (!isset($ermsg)) {
 
 list($width, $height) = getimagesize($o_file);
 
 if($width>200){
 
 $t_wd = 200;
 $t_ht = round(($t_wd / $width) * $height);
 $t_im = imageCreateTrueColor($t_wd,$t_ht);
 imagecopyresampled ($t_im,$o_im,0,0,0,0,$t_wd,$t_ht,$width,$height);
 
 imageJPEG($t_im);
 imageDestroy($t_im);
 
 }else{
 
 imageJPEG($o_im);
 imageDestroy($o_im);
 }
 
 }
 ?>
  Navigation: [Reply to this message] |