//--------------------------------create_tumbnail_image-----------------------------------//
function create_tumbnail_image( $dir_filename, $filename, $frame_width, $frame_height, $new_dir_filename, $new_filename_prefix )
{
if(is_file($dir_filename.$filename)){
$imgsize = get_image_size( $dir_filename, $filename );
if( $imgsize[0] < $frame_width )
{
$frame_width = $imgsize[0];
$frame_height = $imgsize[1];
}
$new_imgsize = set_new_size( $imgsize[0], $imgsize[1], $frame_width, $frame_height );
if( eregi("\.png", $filename) )
create_png_tumbnail_image( $dir_filename, $filename, $new_imgsize[0], $new_imgsize[1], $new_dir_filename, $new_filename_prefix );
if( eregi("\.(jpg|JPG|jpeg)", $filename) )
create_jpeg_tumbnail_image( $dir_filename, $filename, $new_imgsize[0], $new_imgsize[1], $new_dir_filename, $new_filename_prefix );
if( eregi("\.(gif|GIF|gif)", $filename) )
create_gif_tumbnail_image( $dir_filename, $filename, $new_imgsize[0], $new_imgsize[1], $new_dir_filename, $new_filename_prefix );
}
}
//-------------------------------------------------------------------//
function get_image_size( $dir_filename, $filename )
{
if(is_file($dir_filename.$filename)){
$size = GetImageSize( $dir_filename . $filename );
$imgsize = array( $size[0], $size[1] );
return $imgsize;
}
}
//-------------------------------------------------------------------//
function set_new_size( $src_width, $src_height, $frame_width, $frame_height )
{
$ratio = $src_height / $src_width;
$new_width = $frame_width;
$new_height = round($ratio * $new_width);
$new_size = array( $new_width, $new_height );
return $new_size;
}
//-------------------------------------------------------------------//
function create_png_tumbnail_image( $dir_filename, $filename, $new_width, $new_height, $new_dir_filename, $new_filename_prefix )
{
if(is_file($dir_filename.$filename)){
$imgsize = get_image_size( $dir_filename, $filename );
$im_in = ImageCreateFromPng( $dir_filename . $filename );
if( in_array( "imagecreatetruecolor", get_extension_funcs( "gd" ) ) )
{
$im_out = ImageCreateTrueColor( $new_width, $new_height );
ImageCopyResampled( $im_out, $im_in, 0, 0, 0, 0, $new_width, $new_height, $imgsize[0], $imgsize[1] );
$image = ImageCreateTrueColor( $new_width, $new_height );
}
else //"Your GD version isn't GD 2.0.1 or later!"
{
$im_out = ImageCreate( $new_width, $new_height );
ImageCopyResized( $im_out, $im_in, 0, 0, 0, 0, $new_width, $new_height, $imgsize[0], $imgsize[1] );
$image = ImageCreate( $new_width, $new_height );
}
ImageCopy( $image, $im_out, 0, 0, 0, 0, $new_width, $new_height );
ImagePNG( $image, $new_dir_filename.$new_filename_prefix);
ImageDestroy( $im_in );
ImageDestroy( $im_out );
ImageDestroy( $image );
}
}
//-------------------------------------------------------------------//
function create_jpeg_tumbnail_image( $dir_filename, $filename, $new_width, $new_height, $new_dir_filename, $new_filename_prefix )
{
if(is_file($dir_filename.$filename)){
$imgsize = get_image_size( $dir_filename, $filename );
$im_in = ImageCreateFromJPEG( $dir_filename . $filename );
if( in_array( "imagecreatetruecolor", get_extension_funcs( "gd" ) ) )
{
$im_out = ImageCreateTrueColor( $new_width, $new_height );
ImageCopyResampled( $im_out, $im_in, 0, 0, 0, 0, $new_width, $new_height, $imgsize[0], $imgsize[1] );
$image = ImageCreateTrueColor( $new_width, $new_height );
}
else //"Your GD version isn't GD 2.0.1 or later!"
{
$im_out = ImageCreate( $new_width, $new_height );
ImageCopyResized( $im_out, $im_in, 0, 0, 0, 0, $new_width, $new_height, $imgsize[0], $imgsize[1] );
$image = ImageCreate( $new_width, $new_height );
}
ImageCopy( $image, $im_out, 0, 0, 0, 0, $new_width, $new_height );
ImageJPEG( $image, $new_dir_filename.$new_filename_prefix, 90 );
ImageDestroy( $im_in );
ImageDestroy( $im_out );
ImageDestroy( $image );
}
}
//-------------------------------------------------------------------//
function create_gif_tumbnail_image( $dir_filename, $filename, $new_width, $new_height, $new_dir_filename, $new_filename_prefix )
{
if(is_file($dir_filename.$filename)){
$imgsize = get_image_size( $dir_filename, $filename );
$im_in = ImageCreateFromGIF( $dir_filename . $filename );
if( in_array( "imagecreatetruecolor", get_extension_funcs( "gd" ) ) )
{
$im_out = ImageCreateTrueColor( $new_width, $new_height );
ImageCopyResampled( $im_out, $im_in, 0, 0, 0, 0, $new_width, $new_height, $imgsize[0], $imgsize[1] );
$image = ImageCreateTrueColor( $new_width, $new_height );
}
else //"Your GD version isn't GD 2.0.1 or later!"
{
$im_out = ImageCreate( $new_width, $new_height );
ImageCopyResized( $im_out, $im_in, 0, 0, 0, 0, $new_width, $new_height, $imgsize[0], $imgsize[1] );
$image = ImageCreate( $new_width, $new_height );
}
ImageCopy( $image, $im_out, 0, 0, 0, 0, $new_width, $new_height );
ImageJPEG( $image, $new_dir_filename.$new_filename_prefix, 90 );
ImageDestroy( $im_in );
ImageDestroy( $im_out );
ImageDestroy( $image );
}
}
//-------------------------------------------------------------------//
?>
Vev'ari
Eilif Jógvansson
Kyn: |
|
Føðingardagur: |
// |
Bygd/Býur: |
|