Foros del Web » Programando para Internet » PHP »

Redimensionar imagenes

Estas en el tema de Redimensionar imagenes en el foro de PHP en Foros del Web. Hola amigos, este es un tema bastante hablado ya pero no encuentro solucion a mi problema. Utilizo una funcion para redimensionar las imagenes que el ...
  #1 (permalink)  
Antiguo 11/09/2012, 14:25
Avatar de rlc
rlc
 
Fecha de Ingreso: enero-2012
Mensajes: 20
Antigüedad: 12 años, 3 meses
Puntos: 0
Redimensionar imagenes

Hola amigos,
este es un tema bastante hablado ya pero no encuentro solucion a mi problema.
Utilizo una funcion para redimensionar las imagenes que el usuario sube a mi sitio de manera de dejarlas livianas y ajustadas al tamaño que utilizo : 640 x 480.
El sitio es www.autosanjuan.com.ar , el problema es que si el visitante sube una imagen por ejemplo widescreen, al aplicar la funcion y adaptarla a mi espacio se deforma, pueden ver el caso en este aviso : http://www.compraensanjuan.com/ficha.php?cod_pub=62760 , foto 1

Espero puedan ayudarme, la funcion que utilizo para redimensionar es :

function redimensiona($nombre,$anchura){
if ($anchura==640)
$hmax = 480;
if ($anchura==200)
$hmax = intval($anchura/1.333333333333333333);

$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, $img, 0, 0, 0, 0, $anchura, $altura, $datos[0], $datos[1]);
if($datos[2]==1) imagegif($thumb,$nombre);
if($datos[2]==2) imagejpeg($thumb,$nombre);
if($datos[2]==3) imagepng($thumb,$nombre);
imagedestroy($thumb);
}
  #2 (permalink)  
Antiguo 11/09/2012, 14:40
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 9 meses
Puntos: 1532
Respuesta: Redimensionar imagenes

en ese caso debes de aplicar la formula según si quieres preservar la relación de aspecto, matemáticamente es la regla de 3, sobre un alto o ancho máximo
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #3 (permalink)  
Antiguo 12/09/2012, 08:55
Avatar de rlc
rlc
 
Fecha de Ingreso: enero-2012
Mensajes: 20
Antigüedad: 12 años, 3 meses
Puntos: 0
Respuesta: Redimensionar imagenes

Gracias por responder Mayco, pero no comprendo bien la respuesta.
En los casos que la foto no venga en formato 4:3, en cuyo caso con redimensionar es suficiente, debo preservar la relacion de aspecto, pero luego al mostrar esa foto en un contenedor prefijado a 640 x 480, la foto lo mismo se deforma.
Ten en cuenta que yo necesito respetar el cuadrado de 640 x 480 para que no altere mi diseño.

Etiquetas: imagenes, redimensionar, usuarios
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:47.