Ver Mensaje Individual
  #5 (permalink)  
Antiguo 10/10/2012, 14:28
cheterporras2
 
Fecha de Ingreso: octubre-2011
Mensajes: 160
Antigüedad: 12 años, 6 meses
Puntos: 2
Respuesta: Div redondo e imagen deforme

Hola corassón!!! ¿Cómo estás?

Yo liadita con el tema, aunque por fin he encontrado la solución.

Te explico cuál era el problema. Los valores que pisaban eran NECESARIOS ya que no se podían modificar por ser los del div que muestra la imagen e iban encajados en un (puñetero) dibujo de fondo.

Después de buscar, buscar y buscar, leí el tema del crop, creí que eso era factible, ya que, en principio, iba a cortar la imagen, pero de las mil maneras que probré, en todas se modificaban las propiedades del div, no del thumb. Al ser un tema de css, lo incluí aquí junto con el php (el html es sólo un input de archivo y un botón de enviar, por eso no lo vi importante).

Hace 5 minutos, antes de leer tu mensaje, modifiqué el código php, ya que encontré esta página: http://casamadrugada.net/tutoriales/...y-libreria-gd/ y, finalmente, conseguí lo que estaba buscando.

Este es el código php modificado, adaptadado para sacar el thumbnail de una base de datos y que funciona:
Código PHP:
$miniatura_ancho_maximo 315;
$miniatura_alto_maximo 279;
 
$info_imagen getimagesize($nombre_nuevo_con_carpeta);
$imagen_ancho $info_imagen[0];
$imagen_alto $info_imagen[1];
$imagen_tipo $info_imagen['mime'];
 
 
$proporcion_imagen $imagen_ancho $imagen_alto;
$proporcion_miniatura $miniatura_ancho_maximo $miniatura_alto_maximo;
 
if ( 
$proporcion_imagen $proporcion_miniatura ){
    
$miniatura_ancho $miniatura_alto_maximo $proporcion_imagen;
    
$miniatura_alto $miniatura_alto_maximo;
} else if ( 
$proporcion_imagen $proporcion_miniatura ){
    
$miniatura_ancho $miniatura_ancho_maximo;
    
$miniatura_alto $miniatura_ancho_maximo $proporcion_imagen;
} else {
    
$miniatura_ancho $miniatura_ancho_maximo;
    
$miniatura_alto $miniatura_alto_maximo;
}
 
$x = ( $miniatura_ancho $miniatura_ancho_maximo ) / 2;
$y = ( $miniatura_alto $miniatura_alto_maximo ) / 2;
 
switch ( 
$imagen_tipo ){
    case 
"image/jpg":
    case 
"image/jpeg":
        
$imagen imagecreatefromjpeg$nombre_nuevo_con_carpeta );
        break;
    case 
"image/png":
        
$imagen imagecreatefrompng$nombre_nuevo_con_carpeta );
        break;
    case 
"image/gif":
        
$imagen imagecreatefromgif$nombre_nuevo_con_carpeta );
        break;
}
 
$lienzo imagecreatetruecolor$miniatura_ancho_maximo$miniatura_alto_maximo );
$lienzo_temporal imagecreatetruecolor$miniatura_ancho$miniatura_alto );
 
imagecopyresampled($lienzo_temporal$imagen0000$miniatura_ancho$miniatura_alto$imagen_ancho$imagen_alto);
imagecopy($lienzo$lienzo_temporal0,0$x$y$miniatura_ancho_maximo$miniatura_alto_maximo);
 
imagejpeg($lienzo"thumb/tn_$nombre_nuevo"90);
$miThumb="thumb/tn_$nombre_nuevo"
Perdón si me he explicado un poco mal y por eso no me habéis podido ayudar. Y, bueno, a la espera de ser trasladada, jejeje. Besinessss furoya. ;)