note 35319 added to function.imagecopyresampled

From: Date: Wed, 27 Aug 2003 14:21:15 +0000
Subject: note 35319 added to function.imagecopyresampled
Groups: php.notes 
Request: Send a blank email to php-notes+get-55176@lists.php.net to get a copy of this message
<? /* Riccardo CiniC Bonciani: riboncia@inwind.it This functions create resampled and resized images. $file_name_src = source file; $file_name_dest = destination file By GD it's impossible to create GIF images, so any gif images will be converted in JPEG type. ONLY JPEG, GIF, PNG IMAGES ARE SUPPORTED */ function create_thumb_hfixed($file_name_src, $file_name_dest, $height, $quality=100) { if (file_exists($file_name_src) && isset($file_name_dest)) { $est_src = pathinfo(strtolower($file_name_src)); $est_dest = pathinfo(strtolower($file_name_dest)); $size = getimagesize($file_name_src); $h = number_format($height, 0, ',', ''); $w = number_format(($size[0]/$size[1])*$height,0,',',''); // IMPOSTAZIONE STREAM DESTINAZIONE if ($est_dest['extension'] == "gif" || $est_dest['extension'] == "jpg") { $file_name_dest = substr_replace($file_name_dest, 'jpg', -3); $dest = imagecreatetruecolor($w, $h); imageantialias($dest, TRUE); } elseif ($est_dest['extension'] == "png") { $dest = imagecreatetruecolor($w, $h); imageantialias($dest, TRUE); } else { return FALSE; } // IMPOSTAZIONE STREAM SORGENTE switch($size[2]) { case 1: //GIF $src = imagecreatefromgif($file_name_src); break; case 2: //JPEG $src = imagecreatefromjpeg($file_name_src); break; case 3: //PNG $src = imagecreatefrompng($file_name_src); break; default: return FALSE; break; } imagecopyresampled($dest, $src, 0, 0, 0, 0, $w, $h, $size[0], $size[1]); switch($size[2]) { case 1: case 2: imagejpeg($dest,$file_name_dest, $quality); break; case 3: imagepng($dest,$file_name_dest); } return TRUE; } return FALSE; } function create_thumb_wfixed($file_name_src, $file_name_dest, $weight,$quality=100) { if (file_exists($file_name_src) && isset($file_name_dest)) { $est_src = pathinfo(strtolower($file_name_src)); $est_dest = pathinfo(strtolower($file_name_dest)); $size = getimagesize($file_name_src); $w = number_format($weight, 0, ',', ''); $h = number_format(($size[1]/$size[0])*$weight,0,',',''); // IMPOSTAZIONE STREAM DESTINAZIONE if ($est_dest['extension'] == "gif" || $est_dest['extension'] == "jpg") { $file_name_dest = substr_replace($file_name_dest, 'jpg', -3); $dest = imagecreatetruecolor($w, $h); imageantialias($dest, TRUE); } elseif ($est_dest['extension'] == "png") { $dest = imagecreatetruecolor($w, $h); imageantialias($dest, TRUE); } else { return FALSE; } // IMPOSTAZIONE STREAM SORGENTE switch($size[2]) { case 1: //GIF $src = imagecreatefromgif($file_name_src); break; case 2: //JPEG $src = imagecreatefromjpeg($file_name_src); break; case 3: //PNG $src = imagecreatefrompng($file_name_src); break; default: return FALSE; break; } imagecopyresampled($dest, $src, 0, 0, 0, 0, $w, $h, $size[0], $size[1]); switch($size[2]) { case 1: case 2: imagejpeg($dest,$file_name_dest, $quality); break; case 3: imagepng($dest,$file_name_dest); } return TRUE; } return FALSE; } ?> ---- Manual Page -- http://www.php.net/manual/en/function.imagecopyresampled.php Edit Note -- http://master.php.net/manage/user-notes.php?action=edit+35319 Delete Note -- http://master.php.net/manage/user-notes.php?action=delete+35319&report=yes Reject Note -- http://master.php.net/manage/user-notes.php?action=reject+35319&report=yes

« previous php.notes (#55176) next »