Revision: 33446
Updated Code
at October 9, 2010 21:50 by stz184
Updated Code
function image_resize($input_file, $output_file, $new_size=75, $crop=true) { if(!file_exists($input_file)) { return false; } if (function_exists('ini_set')) { @ini_set('memory_limit', -1); ini_set( 'arg_separator.output' , '&' ); } if(eregi('\.jpg$|\.jpeg$', $input_file)) { $original = @imagecreatefromjpeg($input_file); } elseif (eregi('\.gif$', $input_file)) { $original = @imagecreatefromgif($input_file); } elseif (eregi('\.png$', $input_file)) { $original = @imagecreatefrompng($input_file); } else { return false; } if ($original) { if (function_exists('getimagesize')) { list($width, $height, $type, $attr) = getimagesize($input_file); } else { return false; } $ratio['x'] = round($width/$new_size, 2); $ratio['y'] = round($height/$new_size, 2); if($crop == true) { $ratio = min($ratio['x'], $ratio['y']); } else { $ratio = max($ratio['x'], $ratio['y']); } $smallheight = floor($height / $ratio); $smallwidth = floor($width / $ratio); if($crop == true) { $ofx = floor(($new_size - $smallwidth) / 2); $ofy = floor(($new_size - $smallheight) / 2); } else { $ofx = $ofy = 0; } if (function_exists('imagecreatetruecolor')) { if($crop == true) { $small = imagecreatetruecolor($new_size, $new_size); } else { $small = imagecreatetruecolor($smallwidth, $smallheight); } } else { if($crop == true) { $small = imagecreate($new_size, $new_size); } else { $small = imagecreate($smallwidth, $smallheight); } } if (function_exists('imagecopyresampled')) { imagecopyresampled($small, $original, $ofx, $ofy, 0, 0, $smallwidth, $smallheight, $width, $height); } else { imagecopyresized($small, $original, $ofx, $ofy, 0, 0, $smallwidth, $smallheight, $width, $height); } if(imagejpeg($small, $output_file)) { if(file_exists($output_file)) { return true; } } else { return false; } } }
Revision: 33445
Initial Code
Initial URL
Initial Description
Initial Title
Initial Tags
Initial Language
at October 8, 2010 21:50 by stz184
Initial Code
function image_resize($input_file, $output_file, $new_size=75, $crop=true) { if(!file_exists($input_file)) { return false; } if (function_exists('ini_set')) { @ini_set('memory_limit', -1); ini_set( 'arg_separator.output' , '&' ); } if(eregi('\.jpg$|\.jpeg$', $input_file) || getmimetype($input_file, 'image/jpeg')) { $original = @imagecreatefromjpeg($input_file); } elseif (eregi('\.gif$', $input_file) || getmimetype($input_file, 'image/gif')) { $original = @imagecreatefromgif($input_file); } elseif (eregi('\.png$', $input_file) || getmimetype($input_file, 'image/png')) { $original = @imagecreatefrompng($input_file); } else { return false; } if ($original) { if (function_exists('getimagesize')) { list($width, $height, $type, $attr) = getimagesize($input_file); } else { return false; } $ratio['x'] = round($width/$new_size, 2); $ratio['y'] = round($height/$new_size, 2); if($crop == true) { $ratio = min($ratio['x'], $ratio['y']); } else { $ratio = max($ratio['x'], $ratio['y']); } $smallheight = floor($height / $ratio); $smallwidth = floor($width / $ratio); if($crop == true) { $ofx = floor(($new_size - $smallwidth) / 2); $ofy = floor(($new_size - $smallheight) / 2); } else { $ofx = $ofy = 0; } if (function_exists('imagecreatetruecolor')) { if($crop == true) { $small = imagecreatetruecolor($new_size, $new_size); } else { $small = imagecreatetruecolor($smallwidth, $smallheight); } } else { if($crop == true) { $small = imagecreate($new_size, $new_size); } else { $small = imagecreate($smallwidth, $smallheight); } } if (function_exists('imagecopyresampled')) { imagecopyresampled($small, $original, $ofx, $ofy, 0, 0, $smallwidth, $smallheight, $width, $height); } else { imagecopyresized($small, $original, $ofx, $ofy, 0, 0, $smallwidth, $smallheight, $width, $height); } if(imagejpeg($small, $output_file)) { if(file_exists($output_file)) { return true; } } else { return false; } } }
Initial URL
Initial Description
If the optional parameter $crop is set to TRUE the image will be zoomed and cropped to specific size ($new_size). Else, the image will be resized to size, keeping aspect ratio and using $new_size as max size.
Initial Title
Image resizer (thumbnail generator)
Initial Tags
resize, image
Initial Language
PHP