Foros del Web » Programando para Internet » PHP »

problema con thumb de imagenes

Estas en el tema de problema con thumb de imagenes en el foro de PHP en Foros del Web. lo que pasa es que queiro que las imagenes queden enminiatura pero del mismo tamaño todas, le doy los parametros pero hace la miniaturas dependiendo ...
  #1 (permalink)  
Antiguo 14/09/2006, 18:36
Avatar de giotari
Usuario no validado
 
Fecha de Ingreso: mayo-2003
Ubicación: Chile
Mensajes: 295
Antigüedad: 20 años, 11 meses
Puntos: 0
problema con thumb de imagenes

lo que pasa es que queiro que las imagenes queden enminiatura pero del mismo tamaño todas, le doy los parametros pero hace la miniaturas dependiendo del tamaño original de la imagen..

dejo el codigo
Código PHP:
<?php 
$anchura
=$_GET['ancho']; 
$hmax$_GET['alto']; 
//$nombre=basename($_GET['ruta']); 
$nombre=$_GET['ruta']; 
$datos getimagesize($nombre); 
if(
$datos[2]==1){$img imagecreatefromgif($nombre);} 
if(
$datos[2]==2){$img imagecreatefromjpeg($nombre);} 
if(
$datos[2]==3){$img imagecreatefrompng($nombre);} 
$ratio = ($datos[0] / $anchura); 
$altura = ($datos[1] / $ratio); 
if(
$altura>$hmax){$anchura2=$hmax*$anchura/$altura;$altura=$hmax;$anchura=$anchura2;} 
$thumb imagecreatetruecolor($anchura,$altura); 
imagecopyresampled($thumb$img0000$anchura$altura$datos[0], $datos[1]); 
if(
$datos[2]==1){header("Content-type: image/gif"); imagegif($thumb);} 
if(
$datos[2]==2){header("Content-type: image/jpeg");imagejpeg($thumb);} 
if(
$datos[2]==3){header("Content-type: image/png");imagepng($thumb); } 
imagedestroy($thumb); 
?>

pueden ver un ejemplo en:

http://www.jorgegarces.cl/index.php?gal=20051002185823
  #2 (permalink)  
Antiguo 14/09/2006, 21:27
Avatar de chalchis  
Fecha de Ingreso: julio-2003
Mensajes: 1.773
Antigüedad: 20 años, 9 meses
Puntos: 21
De acuerdo

checa este sitio esta genial yo me base para hacer mi galeria de imagenes
http://www.programacion.net/php/tutorial/phpsol_gd/3/

saludos

suerte
__________________
gerardo
  #3 (permalink)  
Antiguo 15/09/2006, 17:53
 
Fecha de Ingreso: octubre-2004
Ubicación: Lima, Perú
Mensajes: 185
Antigüedad: 19 años, 5 meses
Puntos: 1
Yo utilizo este codigo
Código PHP:
<?php
function thumb($imagefile$w) {

    
/* Obtener extensión del archivo */
    
$dot = (strlen($imagefile) - strrpos($imagefile".")-1)*(-1);

    
$ext substr($imagefile$dot);
    
$ext strtolower($ext);    
        
    
/* Chequear que las imágenes sean de alguno de los formatos soportados. Por medio de la función strtolower(), pasamos la extensión a minúsculas */
    
    
if(strtolower($ext) == "gif") {
        if (!
$src_img imagecreatefromgif($imagefile)) {
            echo 
"Error abriendo $imagefile!"; exit;
        }
    } else if(
strtolower($ext) == "jpg" || strtolower($ext) == "jpeg") {
        if (!
$src_img imagecreatefromjpeg($imagefile)) {
            echo 
"Error abriendo $imagefile!"; exit;
        }
    } else if(
strtolower($ext) == "png") {
        if (!
$src_img imagecreatefrompng($imagefile)) {
            echo 
"Error abriendo $imagefile!"; exit;
        }
    } else {
        echo 
"Formato de imágen no soportada"; exit;
    }
    
    
/*La función getimagesize devuelve un array con la siguiente estructura:
        array {
            [0] => "ancho en pixeles"
            [1] => "alto en pixeles"
            [2] => "tipo de imágen (1=GIF; 2=JPG; 3=PNG)"
            [3] => "width=xxx height=yyy" (para usar con el tag img de HTML)
        }
    */
    
    
$hw getimagesize($imagefile);
    
/* $w es el ancho para la nueva imágen */
    
$new_w $w;
    
/* A través del cociente entre el alto y el cociente entre la anchura original y la anchura nueva, mantenemos las proporciones de la imágen.*/
    
$new_h $hw["1"]/($hw["0"]/$w);

    
/* Intentamos crear una imágen 'true color'. Esta función es soportada a partir de GD 2.0, por lo que en caso de no funcionar, se usará la función imageCreate */
    
$dst_img = @imagecreatetruecolor($new_w$new_h);
    if(!
$dst_img) {
      
$dst_img imageCreate($new_w$new_h);
    }
    
    
/* Se crea la imágen con los valores obtenidos y borramos las imágenes de la memoria. */
    
imagecopyresized($dst_img,$src_img,0,0,0,0,$new_w,$new_h,imagesx($src_img),imagesy($src_img));
    
imagejpeg($dst_img,"",90);
    
ImageDestroy($src_img);
    
ImageDestroy($dst_img);
}

/* Se indica el tipo de archivo */
header("Content-type: image/jpeg");

/* Llamamos a la función para crear el thumbnail con los valores obtenidos por HTTP GET */
thumb($_GET[image], $_GET[w]);

?>
Pero con la funcion w ( es el ancho), que llama la imagen de esta manera thumb.php?image=_galeria/scan/Naruto/0855.jpg&w=110
Es el mismo problema que tengo de que solamente reconoce el tamaño de ancho, pero tambien quisiera que de un limite a la altura de la imagen, ya que vi la pagina pero no tuve suerte, cierto de los colores no me gusta, por eso prefiero el codigo que puse, solo faltaria ese detalle de cada imagen tenga un rango tanto de alto como ancho, alguna sugerencia
  #4 (permalink)  
Antiguo 17/09/2006, 21:57
 
Fecha de Ingreso: octubre-2004
Ubicación: Lima, Perú
Mensajes: 185
Antigüedad: 19 años, 5 meses
Puntos: 1
NInguna sugerencia
  #5 (permalink)  
Antiguo 17/09/2006, 23:06
Avatar de chalchis  
Fecha de Ingreso: julio-2003
Mensajes: 1.773
Antigüedad: 20 años, 9 meses
Puntos: 21
veo que ni si quiera has revisado la liga que te mande checala

saludos

http://www.programacion.net/php/tutorial/phpsol_gd/3/
__________________
gerardo
  #6 (permalink)  
Antiguo 18/09/2006, 08:40
Avatar de giotari
Usuario no validado
 
Fecha de Ingreso: mayo-2003
Ubicación: Chile
Mensajes: 295
Antigüedad: 20 años, 11 meses
Puntos: 0
chalchis esta bueno el tutorial..pero no tine ejemplo ni se puede descargar.. la idea es tener una solucion rapida y no esta copiando y haciendo el ejemplo si el script ya esta hecho
  #7 (permalink)  
Antiguo 18/09/2006, 13:00
 
Fecha de Ingreso: octubre-2004
Ubicación: Lima, Perú
Mensajes: 185
Antigüedad: 19 años, 5 meses
Puntos: 1
Cita:
Iniciado por chalchis Ver Mensaje
veo que ni si quiera has revisado la liga que te mande checala

saludos

http://www.programacion.net/php/tutorial/phpsol_gd/3/
Si lo revise y lo probe pero no me gusto para nada sus colores el rango si que me gusto pero tambien quisiera configurarlo con el codigo que puse ya que tengo poner modificarlo, pero algo que me pierdo.
Código PHP:
    $new_w $w
    
/* A través del cociente entre el alto y el cociente entre la anchura original y la anchura nueva, mantenemos las proporciones de la imágen.*/ 
    
$new_h $hw["1"]/($hw["0"]/$w); 
Con estos codigos tendria que cambiar algo parecido a este
Código PHP:
//¿desplegamos la imagen en la dimensión original?
if(($w $src_w) && ($h $src_h)) {
    
$dst_w $src_w;
    
$dst_h $src_h;
} else
//¿o escalamos la imagen de acuerdo a la dimensión horizontal?
if(($w/$h) < ($src_w/$src_h)) {
    
$dst_w $w;
    
$dst_h $w*$src_h/$src_w;
} else
//¿o la escalamos de acuerdo a la dimensión vertical?
{
    
$dst_w $h*$src_w/$src_h;
    
$dst_h $h;

Pero sin resultados
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 16:58.