To generate thumbnail, here is the simple and easiest way. It will help you in creating thumb for jpg, png and gif images.
/* generateThumb()
*
* @param mixed $source Path to source file
* @param mixed $destination Path to destination file
* @param mixed $width Thumbnail file width
* @param mixed $height Thumbnail file height
* @return bool
*/
function generateThumb($source, $destination, $width = 100, $height = 100){
$ext = strtolower(substr($source, strrpos($source, ".")+1));
$format = ($ext == 'jpg')?'jpeg':$ext;
$from_format = "imagecreatefrom".$format;
$source_image = $from_format ( $source );
$source_width = imagesx ( $source_image );
$source_height = imagesy ( $source_image );
$ratio1 = $source_width/ $width;
$ratio2 = $source_height / $height;
if($ratio1 > $ratio2){
$width = $width;
$height = $source_height/$ratio1;
}else{
$width = $source_width/$ratio2;
$height = $height;
}
$target_image = imagecreatetruecolor($width,$height);
imagecopyresampled($target_image, $source_image, 0, 0, 0, 0, $width, $height, $source_width, $source_height);
$image_function = "image" . $format;
return $image_function ( $target_image, $destination, 100 );
}
Here is how you use it...
if(generateThumb("images/a.jpg", "images/thumbs/a.jpg", 150, 100)){
echo "done";
} else {
echo "failed";
}
Comments
Post a Comment
Want to tell something about this post. Please feel free to write...