GD Image resize functie 
                    
                    Auteur: Koen Stijn  
                    
                        
		
		
		 Uitleg 
Met deze functie kan je gemakkelijk een afbeelding resizen zonder dat deze uitgerokken wordt.
Vergeet niet om het bestand voldoende chmod rechten te geven! 
Veel plezier 
 
                     
                     
                
                
                    
                    Code:  
                    
                    
                    
    
    
        
            
                
<?php
/**
* ResizeImage
* @desc A function to easily resize images
*
* @author Koen <koen@sitemasters.be>
* @version 1.2
*
* @param string $sImage The image you would like to have resized
* @param int $iMaxWidth The maximum width [Optional, default: 600]
* @param int $iMaxHeight The maximum height [Optional, default: 600]
*
* @return False on failure, Array(name, mime, width, height) on succeed.
*
*
* Changelog:
* 10-01-2009
* Added support for "image/pjepg" mime type. (Internet Explorer uses this.)
* 24-01-2009
* Fastened script.
*/
function ResizeImage($sImage, $iMaxWidth=600, $iMaxHeight=600) 
{
	if($aSize = @getimagesize($sImage)) 
	{
		list($iOrigWidth, $iOrigHeight) = $aSize;
		$sMimeType = $aSize['mime'];
		$rResized = null;
		switch($sMimeType) 
		{
			case 'image/jpeg':
			case 'image/pjpeg':
			case 'image/jpg':
				$rResized = imagecreatefromjpeg($sImage);
				break;
			case 'image/gif':
				$rResized = imagecreatefromgif($sImage);
				break;
			case 'image/png':
			case 'image/x-png':
				$rResized = imagecreatefrompng($sImage);
				break;
			default:
				return false;
		}
		if(isset($iOrigWidth, $iOrigHeight)) 
		{
			if($iOrigWidth <= $iMaxWidth && $iOrigHeight <= $iMaxHeight) 
			{
				$iNewWidth = $iOrigWidth;
				$iNewHeight = $iOrigHeight;
			} else 
			{
				$iOrigRatio = $iOrigWidth / $iOrigHeight;
				if(($iMaxWidth/$iMaxHeight) > $iOrigRatio) 
				{
					$iNewWidth = $iMaxHeight * $iOrigRatio;
					$iNewHeight = $iMaxHeight;
				} else 
				{
					$iNewHeight = $iMaxWidth / $iOrigRatio;
					$iNewWidth = $iMaxWidth;
				}
			}
			$rResampledImage = imagecreatetruecolor($iNewWidth, $iNewHeight);			
			imagecopyresampled($rResampledImage, $rResized, 0, 0, 0, 0, $iNewWidth, $iNewHeight, $iOrigWidth, $iOrigHeight);
			unlink($sImage);
			switch($sMimeType) 
			{
				case 'image/jpeg':
				case 'image/pjpeg':
				case 'image/jpg':
					imagejpeg($rResampledImage, $sImage, 100);					
					break;
				case 'image/gif':
					imagegif($rResampledImage, $sImage);	
					break;
				case 'image/png':
				case 'image/x-png':
					imagepng($rResampledImage, $sImage);	
					break;
				default:
					return false;					
			}
			@chmod($sImage, 0777);
			return array(	"name" => $sImage,
					"mime" => $sMimeType,
					"width" => $iNewWidth,
					"height" => $iNewHeight
					);
		} else 
		{
			return false;
		}
	} else 
	{
		return false;		
	}
}
// Voorbeeld:
echo '<pre>', print_r(resize('picture.png')), '</pre>';
// Return Value:
Array
(
    [name] => picture.png
    [mime] => image/png
    [width] => 436
    [height] => 600
)
?>
 
             
            <?php 
/** 
* ResizeImage 
* @desc A function to easily resize images 
* 
* @author Koen <koen@sitemasters.be> 
* @version 1.2 
* 
* @param string $sImage The image you would like to have resized 
* @param int $iMaxWidth The maximum width [Optional, default: 600] 
* @param int $iMaxHeight The maximum height [Optional, default: 600] 
* 
* @return False on failure, Array(name, mime, width, height) on succeed. 
* 
* 
* Changelog: 
* 10-01-2009 
* Added support for "image/pjepg" mime type. (Internet Explorer uses this.) 
* 24-01-2009 
* Fastened script. 
*/ 
 
function  ResizeImage( $sImage ,  $iMaxWidth = 600 ,  $iMaxHeight = 600 )  
{ 
	{ 
		list ( $iOrigWidth ,  $iOrigHeight )  =  $aSize ;  		$sMimeType  =  $aSize [ 'mime' ] ; 
		$rResized  =  null ; 
		switch ( $sMimeType )  
		{ 
			case  'image/jpeg' : 
			case  'image/pjpeg' : 
			case  'image/jpg' : 
				$rResized  =  imagecreatefromjpeg( $sImage ) ; 
				break ; 
			case  'image/gif' : 
				$rResized  =  imagecreatefromgif( $sImage ) ; 
				break ; 
			case  'image/png' : 
			case  'image/x-png' : 
				$rResized  =  imagecreatefrompng( $sImage ) ; 
				break ; 
			default : 
				return  false ; 
		} 
		if ( isset ( $iOrigWidth ,  $iOrigHeight ) )   		{ 
			if ( $iOrigWidth  <=  $iMaxWidth  &&  $iOrigHeight  <=  $iMaxHeight )  
			{ 
				$iNewWidth  =  $iOrigWidth ; 
				$iNewHeight  =  $iOrigHeight ; 
			}  else  
			{ 
				$iOrigRatio  =  $iOrigWidth  /  $iOrigHeight ; 
				if ( ( $iMaxWidth / $iMaxHeight )  >  $iOrigRatio )  
				{ 
					$iNewWidth  =  $iMaxHeight  *  $iOrigRatio ; 
					$iNewHeight  =  $iMaxHeight ; 
				}  else  
				{ 
					$iNewHeight  =  $iMaxWidth  /  $iOrigRatio ; 
					$iNewWidth  =  $iMaxWidth ; 
				} 
			} 
			$rResampledImage  =  imagecreatetruecolor( $iNewWidth ,  $iNewHeight ) ; 			
			imagecopyresampled( $rResampledImage ,  $rResized ,  0 ,  0 ,  0 ,  0 ,  $iNewWidth ,  $iNewHeight ,  $iOrigWidth ,  $iOrigHeight ) ; 
			switch ( $sMimeType )  
			{ 
				case  'image/jpeg' : 
				case  'image/pjpeg' : 
				case  'image/jpg' : 
					imagejpeg( $rResampledImage ,  $sImage ,  100 ) ; 					
					break ; 
				case  'image/gif' : 
					imagegif( $rResampledImage ,  $sImage ) ; 	
					break ; 
				case  'image/png' : 
				case  'image/x-png' : 
					imagepng( $rResampledImage ,  $sImage ) ; 	
					break ; 
				default : 
					return  false ; 					
			} 
			return  array ( 	"name"  =>  $sImage ,  					"mime"  =>  $sMimeType , 
					"width"  =>  $iNewWidth , 
					"height"  =>  $iNewHeight 
					) ; 
		}  else  
		{ 
			return  false ; 
		} 
	}  else  
	{ 
		return  false ; 		
	} 
} 
 
// Voorbeeld: 
 
echo '<pre>' ,  print_r ( resize
( 'picture.png' ) ) ,  '</pre>' ;  
// Return Value: 
 
( 
    [ name]  =>  picture. png
    [ mime]  =>  image/ png
    [ width]  =>  436 
    [ height]  =>  600 
) 
 
?> 
 
         
     
 Download code (.txt) 
                     
                     
                
                
            
            
                    
 
            
                
                Stemmen  
                
                Niet ingelogd.