width y height máximo al mostrar una foto

Bi0HaZaR

Wops!
estaba revisando mi web y ver de hacerle posibles cambios, el caso es que he puesto un limite al subir una foto, de 180 * 160 px, todo perfecto, lo unico que me parece un poquito pequeñas.. pero es que si son mas grandes se rompe toda la estructura.. entonces estuve pensando en como hacer para poner simplemente un limite en el codigo del y que todas las fotos que sean mas grandes, simplemente se pongan de esa dimension, y al hacerle click se abra otra ventana y las muestre en grande.. vamos, como las fotos de mv mismamente, el caso es que he lo consegui, poniendo width="valor" y height="valor" pero claro.. si una foto es menor a esa dimension me la estira, y eso no quiero, como podria hacerlo?
thanks!

PiradoIV

Con PHP sería:

<?php
$tamano = getimagesize('ruta/de/la/foto.jpg');

$x = $tamano[0];
$y = $tamano[1];

if($tamano[0] > 180) {
$x = 180;
}
if($tamano[1] > 160) {
$y = 160;
}

echo '<img src="ruta/de/la/foto.jpg" width="'.$x.'" height="'.$y.'" />';
?>

Puedes experimentar sin usar el tema de $y, así no se te deformará la foto pues no todas las imágenes tienen la misma proporción.

Saludotes,
Pirado IV estuvo akí ;)

Whose

Yo hize algo asi pero como dice Pirado, no todas las fotos tienen las mismas proporciones, pero con un par de if lo solucionas.

Bi0HaZaR

aaaaaaaajá, hace tiempo vi un chavalillo que hizo una especie de galeria de imagenes y lo que hacia simplemente es de una foto crear un thumbnail, tenia pensado eso, pero bueno, parece que no es la idea..
respecto a lo de los ifs whose.. asi ahora mismo lo unico que se me ocurre es crear tantos ifs como proporciones hay? xDD eso seria demasiado animal, millones de ifs xDDDDD

Whose

Si para las mini imagenes thumbnails pero para los perfiles o sitios grandes pero con un tamaño especifico es mejor lo que te decimos.

erdanblo

http://php-hispano.net/archivos/Funciones/28/1/ResizeImage1.html

http://php-hispano.net/archivos/Funciones/170/1/Normalizar-grficos1.html

Usuarios habituales

  • erdanblo
  • Whose
  • Bi0HaZaR
  • PiradoIV