Sunday, June 28, 2009

Creating Thumnails Of JPEG Images Using PHP GD2 Library

We were doing a website development project of Goenka Jewellers Private Limited. The website contained a image gallery to display their design collections. We used this function to create thumbnails of large JPEG images. The function is using PHP GD2 Library to create thumbnails of JPEG Images. This is why thumbnails are not very high in quality.

function make_thumb($src,$dest,$desired_width)
{

/* read the source image */
$source_image = imagecreatefromjpeg($src);
$width = imagesx($source_image);
$height = imagesy($source_image);

/* find the "desired height" of this thumbnail, relative to the desired width */
$desired_height = floor($height*($desired_width/$width));

/* create a new, "virtual" image */
$virtual_image = imagecreatetruecolor($desired_width,$desired_height);

/* copy source image at a resized size */
imagecopyresized($virtual_image,$source_image,0,0,0,0,$desired_width,$desired_height,$width,$height);

/* create the physical thumbnail image to its destination */
imagejpeg($virtual_image,$dest);
}

No comments: