Foros del Web » Programando para Internet » PHP »

como crear thumbs sin perder calidad de imagen

Estas en el tema de como crear thumbs sin perder calidad de imagen en el foro de PHP en Foros del Web. Hola pues como dice el titulo, como podria crear un thumbnail de una imagen sin reducirle la calidad? actualmente estoy usando un script que encontre ...
  #1 (permalink)  
Antiguo 09/03/2011, 14:28
 
Fecha de Ingreso: septiembre-2009
Mensajes: 306
Antigüedad: 10 años, 1 mes
Puntos: 10
como crear thumbs sin perder calidad de imagen

Hola
pues como dice el titulo, como podria crear un thumbnail de una imagen sin reducirle la calidad? actualmente estoy usando un script que encontre por ahi pero el problema es que cuando copia la imagen original para hacer la imagen de la vista previa se pierde mucha calidad, esta es la web en la que lo aplico en su galeria de imagenes

Como pueden ver las imagenes que me crea el script se ven horribles, pero si hacen click en la imagen pueden ver que la original se ve nitida.

Como puedo hacer para que no se pierda la calidad?
__________________
Mantente al tanto del acontecer Turistico nacional
Visita el Parque Bicentenario El Salvador
  #2 (permalink)  
Antiguo 09/03/2011, 15:02
Avatar de gogupe  
Fecha de Ingreso: octubre-2006
Ubicación: Mallorca
Mensajes: 873
Antigüedad: 13 años
Puntos: 32
Respuesta: como crear thumbs sin perder calidad de imagen

Cual es el script que has usado?
Hay algunos por ahí que te deja poner la calidad. He visto que van desde 1 a 10, de menor a mayor calidad.
  #3 (permalink)  
Antiguo 09/03/2011, 15:11
 
Fecha de Ingreso: septiembre-2009
Mensajes: 306
Antigüedad: 10 años, 1 mes
Puntos: 10
Respuesta: como crear thumbs sin perder calidad de imagen

Cita:
Iniciado por gogupe Ver Mensaje
Cual es el script que has usado?
Hay algunos por ahí que te deja poner la calidad. He visto que van desde 1 a 10, de menor a mayor calidad.
este es script que estoy usando, lo arme de varios ejemplos que encontré por aquí y por aya en internet

Código PHP:
    function crear_thumb($img$tname){
            
// Obtencion de formatos de imagen 
            
if(stristr(strtolower($img),"jpg") or stristr(strtolower($img),"jpeg")){ 
                
$img imagecreatefromjpeg($img); 
                
$tipo "jpg"
            } 
    
            if(
stristr(strtolower($img),"png")){ 
                
$img imagecreatefrompng($img); 
                
$tipo "png"
            } 
             
            if(
stristr(strtolower($img),"gif")){ 
                
$img imagecreatefromgif($img); 
                
$tipo "gif"
            } 
        
                    
// Obtenemos ancho y alto de la imagen 
            
$ancho imagesx($img); 
            
$alto imagesy($img); 
            
$return = array($ancho$alto);
            
            
//si el alto de la img es mayor al ancho
            
if($ancho $alto){
                
$n_alto 154
                
$redu = ($n_alto 100) / $alto
                
$n_ancho round($ancho $redu 100); 
                
$thumb imagecreatetruecolor($n_ancho,$n_alto); 
                if(!
imagecopyresized($thumb,$img,0,0,0,0,$n_ancho,$n_alto,$ancho,$alto)){echo "cpy <br/>"; }
                switch(
$tipo){
                    case 
"jpg":
                    
$img imagejpeg($img$tname100);
                    break;
        
                    case 
"png":
                    
$img imagepng($img$tname);
                    break;

                    case 
"gif":
                    
$img imagegif($img$tname);
                    break;

                }
            }else{
                
                
$n_ancho 142
                
$redu = ($n_ancho 100) / $ancho
                
$n_alto round($alto $redu 100); 
                
$thumb imagecreatetruecolor($n_ancho,$n_alto); 
                
imagecopyresized($thumb,$img,0,0,0,0,$n_ancho,$n_alto,$ancho,$alto); 
                    switch(
$tipo){
                        case 
"jpg":
                        
imagejpeg($thumb$tname100); 
                        
imagecreatefromjpeg($tname);
            
                        case 
"png":
                        
imagepng($thumb$tname); 
                        
$img imagecreatefrompng($tname);

                        case 
"gif":
                        
imagegif($thumb$tname); 
                        
$img imagecreatefromgif($tname);

                    }
            }

    
            
imagedestroy($thumb); 
            
$return[] = $n_ancho;
            
$return[] = $n_alto;
            return 
$return;
    } 
__________________
Mantente al tanto del acontecer Turistico nacional
Visita el Parque Bicentenario El Salvador
  #4 (permalink)  
Antiguo 10/03/2011, 01:10
Avatar de sigher  
Fecha de Ingreso: enero-2011
Mensajes: 46
Antigüedad: 8 años, 8 meses
Puntos: 0
Respuesta: como crear thumbs sin perder calidad de imagen

Yo utilizo este y me va a las mil maravillas:


http://shiftingpixel.com/2008/03/03/smart-image-resizer/


Enlazas la imagen con un link similar a:

Código PHP:
echo "<img  class='interior' src='thumb.php?image=/img/".$rimagen['imagen']."&width=90&height=90&cropratio=1:1' hspace='5' vspace='5'/>"

Etiquetas: calidad, perder, thumbs
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 21:51.