| Server IP : 87.98.154.146 / Your IP : 216.73.216.101 Web Server : Apache System : Linux webm005.cluster126.gra.hosting.ovh.net 6.18.42-ovh-vps-grsec-zfs+ #1 SMP PREEMPT_DYNAMIC Wed Aug 5 15:59:48 CEST 2026 x86_64 User : bsiadvisil ( 110003) PHP Version : 7.3.33 Disable Function : _dyuweyrj4,_dyuweyrj4r,dl MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /home/bsiadvisil/www/modules/mod_sp_simple_gallery/ |
Upload File : |
<?php
/**
* @title SP Image Gallery
* @website http://www.joomshaper.com
* @copyright Copyright (C) 2010 - 2014 JoomShaper.com. All rights reserved.
* @license GNU/GPL, see LICENSE.php
Credits: Bit Repository
Source URL: http://www.bitrepository.com/web-programming/php/resizing-an-image.html
------------------------------------------------------------------------------------
*/
class spThumbnail
{
var $image_to_resize;
var $new_width;
var $new_height;
var $ratio;
var $save;
function resize()
{
if( !file_exists( $this -> image_to_resize ) )
{
exit( "File " . $this -> image_to_resize . " does not exist." );
}
$info = GetImageSize( $this -> image_to_resize );
if( empty( $info ) )
{
exit( "The file " . $this -> image_to_resize . " doesn't seem to be an image." );
}
$width = $info[ 0 ];
$height = $info[ 1 ];
$mime = $info[ 'mime' ];/* Keep Aspect Ratio? */
if( $this -> ratio )
{
$thumb = ( $this -> new_width < $width && $this -> new_height < $height ) ? true : false;// Thumbnail
$bigger_image = ( $this -> new_width > $width || $this -> new_height > $height ) ? true : false;// Bigger Image
if( $thumb )
{
if( $this -> new_width >= $this -> new_height )
{
$x = ( $width / $this -> new_width );
$this -> new_height = ( $height / $x );
}
elseif( $this -> new_height >= $this -> new_width )
{
$x = ( $height / $this -> new_height );
$this -> new_width = ( $width / $x );
}
}
elseif( $bigger_image )
{
if( $this -> new_width >= $width )
{
$x = ( $this -> new_width / $width );
$this -> new_height = ( $height * $x );
}
elseif( $this -> new_height >= $height )
{
$x = ( $this -> new_height / $height );
$this -> new_width = ( $width * $x );
}
}
}// What sort of image?
$type = substr( strrchr( $mime, '/' ), 1 );
switch( $type )
{
case 'jpeg':
$image_create_func = 'ImageCreateFromJPEG';
$image_save_func = 'ImageJPEG';
$new_image_ext = 'jpg';
break;
case 'png':
$image_create_func = 'ImageCreateFromPNG';
$image_save_func = 'ImagePNG';
$new_image_ext = 'png';
break;
case 'bmp':
$image_create_func = 'ImageCreateFromBMP';
$image_save_func = 'ImageBMP';
$new_image_ext = 'bmp';
break;
case 'gif':
$image_create_func = 'ImageCreateFromGIF';
$image_save_func = 'ImageGIF';
$new_image_ext = 'gif';
break;
case 'vnd.wap.wbmp':
$image_create_func = 'ImageCreateFromWBMP';
$image_save_func = 'ImageWBMP';
$new_image_ext = 'bmp';
break;
case 'xbm':
$image_create_func = 'ImageCreateFromXBM';
$image_save_func = 'ImageXBM';
$new_image_ext = 'xbm';
break;
default: $image_create_func = 'ImageCreateFromJPEG';
$image_save_func = 'ImageJPEG';
$new_image_ext = 'jpg';
}// New Image
$image_c = ImageCreateTrueColor( $this -> new_width, $this -> new_height );
if ($type=='png') {
imagealphablending($image_c, false);
imagesavealpha($image_c, true);
}
$new_image = $image_create_func( $this -> image_to_resize );
if ($type=='png') {
imagealphablending($new_image, true);
}
ImageCopyResampled( $image_c, $new_image, 0, 0, 0, 0, $this -> new_width, $this -> new_height, $width, $height );
$process = $image_save_func( $image_c, $this->save );
return array( 'result' => $process, 'new_file_path' => $this->save );
}
}