Ver Mensaje Individual
  #5 (permalink)  
Antiguo 31/05/2009, 01:31
Avatar de rompeguesos
rompeguesos
 
Fecha de Ingreso: marzo-2009
Mensajes: 692
Antigüedad: 17 años, 7 meses
Puntos: 8
Pregunta Respuesta: problemas al redimensionar imagenes (ayuda)

Muchas gracias abimaelrc pero antes de escribirme ahora mismo ya lo habia conseguido con otra que he conseguido buscando por el foro y se trata de esto:

redimensionar.php

Código PHP:
<?php
function crearThumb( $fuente, $destino, $dim=120, $propor=false, $forzar=false ) { 
        
$tipo_imagen = explode( ".", $fuente ); 
        
$sizeof = count( $tipo_imagen ) - 1; 
        
$ext = strtolower( $tipo_imagen[$sizeof] ); 
        if ( 
$ext == "gif" ) { 
            
$fuenteimg = @imagecreatefromgif( $fuente ); 
        } 
        elseif ( 
$ext == "png" ) { 
            
$fuenteimg = @imagecreatefrompng( $fuente ); 
        } 
        else { 
            
$fuenteimg = @imagecreatefromjpeg( $fuente ); 
        } 
        list( 
$ancho, $alto, $tipo, $atr ) = getimagesize( $fuente ); 
        if ( 
$ancho > $dim || $alto > $dim || $forzar ) { 
            if ( 
$propor ) { 
                if ( 
$ancho > $alto ) { 
                    
$nAncho = $dim; 
                    
$nAlto = $dim/( $ancho/$alto ); 
                } else { 
                    
$nAlto = $dim; 
                    
$nAncho = $dim/( $alto/$ancho ); 
                } 
            } else { 
                
$nAncho = $dim; 
                
$nAlto = $dim; 
            } 
            
$thumb = imagecreatetruecolor( $nAncho, $nAlto ); 
            
imagecopyresampled( $thumb, $fuenteimg, 0, 0, 0, 0, $nAncho, $nAlto, $ancho, $alto ); 
            
$calidad = 100; 
            if ( 
$ext == "gif" ) {  
                
imagegif( $thumb, $destino, $calidad);  
            }  
            elseif ( 
$ext == "png" ) { 
                
imagepng( $thumb, $destino, $calidad); 
            } 
            else { 
                
imagejpeg( $thumb, $destino, $calidad); 
            } 
        } 
    }  
?>
luego en el codigo de subir la foto lo hice asi:

Código PHP:
//upload de imagen
if(is_uploaded_file($_FILES['fichero']['tmp_name'])) {
            
 
        
//Redimensionar imagen en caso de que lo necesite
include( "../../untitled0.php" );

$ruta = $_FILES['fichero']['tmp_name'];
$rutatemp = $_FILES['fichero']['tmp_name'];
$ruta= str_replace(" ", "", $ruta);
$tipo= $_FILES['fichero']['type'];
$tamano = $_FILES['fichero']['size'];
if(!((
strpos($tipo, "gif") || strpos($tipo, "jpeg")) && ($tamano < 100000) )) {
echo 
'La extensión o el tamaño de los archivos no es correcta'; 
return 
false;
}
else 
{
$destino = $carpeta.$_FILES['fichero']['name'];
move_uploaded_file($rutatemp,$destino);
crearThumb( $destino, $destino, 500, true );
}
       } 
Y me funciona bien, lo unico que no se si este codigo es bueno o se le puede mejorar algo?