Ver Mensaje Individual
  #14 (permalink)  
Antiguo 02/03/2010, 21:45
Avatar de JoseAlejandro_Realza
JoseAlejandro_Realza
 
Fecha de Ingreso: agosto-2008
Ubicación: Maracay - Venezuela
Mensajes: 192
Antigüedad: 15 años, 9 meses
Puntos: 2
Respuesta: Recuperar imagenes de archivo y mostrarlas con php

Para hacer la redimension de las imagenes es muy sencillo, solo necesitas aplicarle una funcion pasandole los parametros necesarios y ya. Te explicare algo sencillo, la funcion solo buscara en tu directorio la imagen segun la ruta que le pases, la copiara y creara una nueva con los tamaños que le asignes. La funcion seria una como esta:

Código PHP:
<?php 

function cambiartam($nombre,$archivo,$ancho,$alto
    { 
    
$verificar explode('.',$nombre);
    
$tmp $verificar[1]; 

    if (
preg_match('/jpg|jpeg|JPG/',$tmp)) 
        { 
        
$imagen=imagecreatefromjpeg($nombre); 
        } 
    if (
preg_match('/png|PNG/',$tmp)) 
        { 
        
$imagen=imagecreatefrompng($nombre); 
        } 
    if (
preg_match('/gif|GIF/',$tmp)) 
        { 
        
$imagen=imagecreatefromgif($nombre); 
        } 

    
$x=imageSX($imagen); 
    
$y=imageSY($imagen); 

    if (
$x $y)  
        { 
        
$w=$ancho
        
$h=$y*($alto/$x); 
        } 

    if (
$x $y)  
        { 
        
$w=$x*($ancho/$y); 
        
$h=$alto
        } 

    if (
$x == $y)  
        { 
        
$w=$ancho
        
$h=$alto
        } 


    
$destino=ImageCreateTrueColor($w,$h); 
   echo 
imagecopyresampled($destino,$imagen,0,0,0,0,$w,$h,$x,$y);  


    if (
preg_match("/png/",$tmp)) 
        { 
        
imagepng($destino,$archivo);  
        }  
    if (
preg_match("/gif/",$tmp)) 
        { 
        
imagegif($destino,$archivo); 
        } 
    else  
        { 
        
imagejpeg($destino,$archivo);  
        } 

    
imagedestroy($destino);  
  echo  
imagedestroy($imagen);  
}
// fin de la función


/*Ahora solo te faltaría aplicarla, lo cual es muy sencillo. Hare un ejemplo con el código que tenias arriba.*/

$nombre_archivo=$_FILES['imagen']['name'];
  
$tam=getimagesize($nombre_archivo);  
                
     if(
$tam[0] > 500 OR $tam[1] > 500)  { 
                    
     
cambiartam($directorio$directorio500500); 
    
    } 
                    

?>
Cualquier duda vuelves a preguntas. Saludos
__________________
Tu Guía Empresarial http://www.empresarial.org.ve Soluciones Empresariales

Atte: José Alejandro Realza