Foros del Web » Programando para Internet » PHP »

Problemas GD redimensionando JPGs XXL

Estas en el tema de Problemas GD redimensionando JPGs XXL en el foro de PHP en Foros del Web. Buenas, Tengo problemas con un script que hice para redimensionar "dinámicamente" las imágenes que subo desde un administrador. Funciona con JPG, GIF y PNG, pero ...
  #1 (permalink)  
Antiguo 14/07/2005, 09:00
 
Fecha de Ingreso: octubre-2003
Ubicación: Villava [NA]
Mensajes: 13
Antigüedad: 14 años, 1 mes
Puntos: 0
Pregunta Problemas GD redimensionando JPGs XXL

Buenas,

Tengo problemas con un script que hice para redimensionar "dinámicamente" las imágenes que subo desde un administrador. Funciona con JPG, GIF y PNG, pero por alguna razón, si el archivo es JPG y mide más de 1000 px (es una estimación, a 900 funciona) de lado, no muestra las imágenes.

¿Sabéis si es posible que la librería GD tenga limitaciones para la imagen a tratar? No he podido averiguar qué versión está instalada en el servidor (está desactivada la función "phpinfo()").

Por favor, echad un vistazo a mi código por si veis errores...

Código PHP:
<?php
/***************************************************
VARIABLES (DE PASO POR URL) QUE REQUIERE ESTE SCRIPT
$seccion: equivale en este caso al directorio en el que se almacena la imagen.
$imagen: nombre de la imagen.
$x: anchura máxima en píxeles. Es opcional.
$Y: altura máxima en píxeles. Es opcional.
****************************************************/

// Recuperar la ruta de la imagen almacenada en la base de datos.
$imagen "img/".$_GET[seccion]."/".$_GET[imagen];

// Establecer anchura predeterminada.
if (empty($_GET[x]))
    {
    
$max_width 400;
    }
else
    {
    
$max_width $_GET[x];
    }

// Establecer altura predeterminada.
if (empty($_GET[y]))
    {
    
$max_height 400;
    }
else
    {
    
$max_height $_GET[x];
    }

// Obtener tamaños y tipo de la imagen original.
$tamanos getimagesize("$imagen");

$original_width $tamanos[0];
$original_height $tamanos[1];

$width $original_width;
$height $original_height;

// En caso de que sea demasiado alta, fija el máximo.
if ($height $max_height
    {
    
$width = ($max_height $height) * $width;
    
$height $max_height;
    }

// En caso de que sea demasiado ancha, fija el máximo.
if ($width $max_width
    {
    
$height = ($max_width $width) * $height;
    
$width $max_width;
    }
$imagen_nueva imagecreatetruecolor($width$height);

$tipo $tamanos[2];
/* 
VALORES QUE DEVUELVE EL ARRAY $tamanos[2]:
    1 = GIF
    2 = JPG
    3 = PNG
    4 = SWF
    5 = PSD
    6 = BMP
    7 = TIFF(orden de bytes intel)
    8 = TIFF(orden de bytes motorola)
    9 = JPC
    10 = JP2
    11 = JPX
    12 = JB2
    13 = SWC
    14 = IFF
    15 = WBMP
    16 = XBM
*/

// OJO: la compilación de la librería GD que lleva el PHP de XXXXX no contempla el manejo de archivos GIF;
// por este motivo, se generará la miniatura de la imagen como PNG.

    
if ($tipo == 1)
        {
        
$img imagecreatefromgif($imagen);
        
imagecopyresampled($imagen_nueva$img0000$width$height$original_width$original_height);
        
Header("Content-type: image/png"); 
        
imagepng($imagen_nueva);
        }
    elseif (
$tipo == 2)
        {
        
$img imagecreatefromjpeg($imagen);
        
imagecopyresampled($imagen_nueva$img0000$width$height$original_width$original_height);
        
Header("Content-type: image/jpeg"); 
        
imagejpeg($imagen_nueva);
        }
    elseif (
$tipo == 3)
        {
        
$img imagecreatefrompng($imagen);
        
imagecopyresampled($imagen_nueva$img0000$width$height$original_width$original_height);
        
Header("Content-type: image/x-png"); 
        
imagepng($imagen_nueva);
        }
    
imagedestroy($imagen_nueva);
?>
Gracias
  #2 (permalink)  
Antiguo 14/07/2005, 10:57
Avatar de abe_k  
Fecha de Ingreso: diciembre-2004
Mensajes: 286
Antigüedad: 13 años
Puntos: 2
imagenes

hombre, yo tengo un script que redimensiona imagenes y va muy bien.
si quieres te lo paso por email

ya diras
__________________
abe_k

Si quieres visitar Andorra, consulta la guia de este pequeño pais y conseguiras toda la información que necesites. La guia del visitante en Andorra
  #3 (permalink)  
Antiguo 14/07/2005, 11:28
 
Fecha de Ingreso: octubre-2003
Ubicación: Villava [NA]
Mensajes: 13
Antigüedad: 14 años, 1 mes
Puntos: 0
Fale, te doy mi email por privado; de todas maneras, he estado probando y el error se produce si la imagen mide 1.500 px o más, por lo que me huele a restricción del servidor... así que la solución pasará por guardar las imágenes redimensionadas a un tamaño inferior a esa cifra.

Grazieee !
  #4 (permalink)  
Antiguo 14/07/2005, 11:32
Avatar de abe_k  
Fecha de Ingreso: diciembre-2004
Mensajes: 286
Antigüedad: 13 años
Puntos: 2
ok, pues ya diras
__________________
abe_k

Si quieres visitar Andorra, consulta la guia de este pequeño pais y conseguiras toda la información que necesites. La guia del visitante en Andorra
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:04.