Foros del Web » Programando para Internet » PHP »

¿Alternativa a la libreria GD?

Estas en el tema de ¿Alternativa a la libreria GD? en el foro de PHP en Foros del Web. Hola ¿Existe alguna alternativa a la libreria GD para generar miniaturas desde el servidor? A mi me salen con muy poca calidad... con esta libreria...
  #1 (permalink)  
Antiguo 27/11/2007, 11:05
 
Fecha de Ingreso: junio-2003
Mensajes: 778
Antigüedad: 20 años, 10 meses
Puntos: 1
¿Alternativa a la libreria GD?

Hola

¿Existe alguna alternativa a la libreria GD para generar miniaturas desde el servidor?
A mi me salen con muy poca calidad... con esta libreria
  #2 (permalink)  
Antiguo 27/11/2007, 11:23
Avatar de mauled  
Fecha de Ingreso: marzo-2005
Ubicación: Cd. de México.
Mensajes: 3.001
Antigüedad: 19 años, 1 mes
Puntos: 33
De acuerdo Re: ¿Alternativa a la libreria GD?

jeje que tipo de imaganes estas tratando de generar?

Saludillos.
  #3 (permalink)  
Antiguo 27/11/2007, 11:25
 
Fecha de Ingreso: junio-2003
Mensajes: 778
Antigüedad: 20 años, 10 meses
Puntos: 1
Re: ¿Alternativa a la libreria GD?

por norma general siempre jpg´s
  #4 (permalink)  
Antiguo 27/11/2007, 11:34
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Re: ¿Alternativa a la libreria GD?

Puedes usar la libreria ImageMagick.

Saludos.
  #5 (permalink)  
Antiguo 27/11/2007, 11:34
Avatar de mauled  
Fecha de Ingreso: marzo-2005
Ubicación: Cd. de México.
Mensajes: 3.001
Antigüedad: 19 años, 1 mes
Puntos: 33
De acuerdo Re: ¿Alternativa a la libreria GD?

pero porque dices que no son de buena calidad tus imagenes?
Detalla un poco más tu problema porfavor.

Existe un "herramienta" llamada imagemagick que te podria ayudar en esto.

Saludillos.
  #6 (permalink)  
Antiguo 04/12/2007, 06:10
 
Fecha de Ingreso: junio-2003
Mensajes: 778
Antigüedad: 20 años, 10 meses
Puntos: 1
Re: ¿Alternativa a la libreria GD?

Pues al generar las miniaturas con GD, éstas son de una calidad pésima, no son nada nítidas.
Probaré con ImageMagick
  #7 (permalink)  
Antiguo 04/12/2007, 06:18
 
Fecha de Ingreso: junio-2003
Mensajes: 778
Antigüedad: 20 años, 10 meses
Puntos: 1
Re: ¿Alternativa a la libreria GD?

La funcion que utilizo en GD es esta

Código:
function createThumb($image, $newname){	
						$size = getimagesize ($image);	
						$height = $size[1];
						$width = $size[0];
						
						if ($width > $height) {
							$newwidth = 80;
							$newheight = round(($height*80)/$width);
						} else {
							$newheight = 80;
							$newwidth = round(($width*80)/$height);	
						}							
						$src = imagecreatefromjpeg($image);
						$im = imagecreatetruecolor($newwidth,$newheight);
						imagecopyresampled($im,$src,0,0,0,0,$newwidth,$newheight,$width,$height);
						imagejpeg($im, $newname,50);
						imagedestroy($im);						
					} // FIN CREO IMAGEN MINIATURA
La miniatura se genera con un ancho de 80, pero muy borrosa...
  #8 (permalink)  
Antiguo 04/12/2007, 07:02
 
Fecha de Ingreso: septiembre-2007
Mensajes: 220
Antigüedad: 16 años, 6 meses
Puntos: 1
Re: ¿Alternativa a la libreria GD?

Código PHP:
function crearMiniatura($archivo$tamano$calidad 85)
{
  
$data getimagesize($archivo);
    if (
$data === false)
    {
        return 
false;
    }
    
    switch (
$data['mime'])
  {
    case 
'image/jpeg':
    case 
'image/pjpeg':
      
$imagen imagecreatefromjpeg($archivo);
      
$creator 'imagejpeg';
      break;
      
    case 
'image/png':
      
$imagen imagecreatefrompng($archivo);
      
$creator 'imagepng';
      break;
       
    case 
'image/gif':
      
$imagen imagecreatefromgif($archivo);
      
$creator 'imagegif';
      break;
      
    default:
      return 
false;
  }
    
    if (
$data[0] > $data[1])
    {
        
$ancho $tamano;
        
$alto round(($data[1] * $tamano) / $data[0]);
    }
    else
    {
      
$ancho round(($data[0] * $tamano) / $data[1]);
        
$alto $tamano;
    }
    
    
$miniatura imagecreatetruecolor($ancho$alto);
    
imagecopyresampled($miniatura$imagen0000$ancho$alto$data[0], $data[1]);
    
    
ob_start();
    if (
$creator == 'imagejpeg')
    {
        
$creator($miniaturanull$calidad);
    }
    else
    {
        
$creator($miniatura);
    }
    
    return array(
ob_get_clean(), $data['mime']);
}


$imagen_nombre 'http://www.google.es/intl/en_com/images/logo_plain.png';


list(
$miniatura$mime) = crearMiniatura($imagen_nombre100);
if (
$miniatura !== false)
{
    
header('Content-Type: '.$mime);
    echo 
$miniatura;

  #9 (permalink)  
Antiguo 04/12/2007, 09:59
 
Fecha de Ingreso: junio-2003
Mensajes: 778
Antigüedad: 20 años, 10 meses
Puntos: 1
Re: ¿Alternativa a la libreria GD?

Sanubrio

Con tu funcion saco la imagen por pantalla, pero como hago para guardarla en un directorio del host??

Gracias por tu ayuda
  #10 (permalink)  
Antiguo 04/12/2007, 10:15
Avatar de lado2mx
Colaborador
 
Fecha de Ingreso: agosto-2001
Ubicación: Veracruz
Mensajes: 3.720
Antigüedad: 22 años, 8 meses
Puntos: 9
Re: ¿Alternativa a la libreria GD?

Por esto no salen bien tus imágenes:
Código PHP:
                        imagejpeg($im$newname,50); 
Intenta esto
Código PHP:
                        imagejpeg($im$newname,100); 
Obvio, lo estoy sacando de tu función
  #11 (permalink)  
Antiguo 05/12/2007, 04:57
 
Fecha de Ingreso: junio-2003
Mensajes: 778
Antigüedad: 20 años, 10 meses
Puntos: 1
Re: ¿Alternativa a la libreria GD?

muuuuuuchas gracias
  #12 (permalink)  
Antiguo 06/12/2007, 15:05
 
Fecha de Ingreso: noviembre-2007
Mensajes: 157
Antigüedad: 16 años, 5 meses
Puntos: 3
Re: ¿Alternativa a la libreria GD?

Es mucho mejor poner la calidad a 90 que a 100, se reduce muchísimo el tamaño del archivo, y la pérdida es muy insignificante. Y más para una miniatura.
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 05:38.