note 95876 modified in function.getimagesize by danbrown

From: Date: Wed, 27 Jan 2010 14:36:32 +0000
Subject: note 95876 modified in function.getimagesize by danbrown
References: 1  Groups: php.notes 
Request: Send a blank email to php-notes+get-165373@lists.php.net to get a copy of this message
This should be easy, but I've re-solved the problem so many times. Hopefully this is useful: <?php // Usage example to find the proper dimensions to resize an image down to 300x400 pixels maximum: list($width, $height) = getimagesize($image); $new_dimensions = resize_dimensions(300,400,$width,$height); // Calculates restricted dimensions with a maximum of $goal_width by $goal_height function resize_dimensions($goal_width,$goal_height,$width,$height) { $return = array('width' => $width, 'height' => $height); // If the ratio > goal ratio and the width > goal width resize down to goal width if ($width/$height > $goal_width/$goal_height && $width > $goal_width) { $return['width'] = $goal_width; $return['height'] = $goal_width/$width * $height; } // Otherwise, if the height > goal, resize down to goal height else if ($height > $goal_height) { $return['width'] = $goal_height/$height * $width; $return['height'] = $goal_height; } return $return; } ?> --was-- This should be easy, but I've re-solved the problem so many times. Hopefully this is useful - if there are any logic errors, let me know: // Usage example to find the proper dimensions to resize an image down to 300x400 pixels maximum: list($width, $height) = getimagesize($image); $new_dimensions = resize_dimensions(300,400,$width,$height); // Calculates restricted dimensions with a maximum of $goal_width by $goal_height function resize_dimensions($goal_width,$goal_height,$width,$height) { $return = array('width' => $width, 'height' => $height); // If the ratio > goal ratio and the width > goal width resize down to goal width if ($width/$height > $goal_width/$goal_height && $width > $goal_width) { $return['width'] = $goal_width; $return['height'] = $goal_width/$width * $height; } // Otherwise, if the height > goal, resize down to goal height else if ($height > $goal_height) { $return['width'] = $goal_height/$height * $width; $return['height'] = $goal_height; } return $return; } http://php.net/manual/en/function.getimagesize.php

« previous php.notes (#165373) next »