Foros del Web » Programando para Internet » PHP »

Resize de fotos

Estas en el tema de Resize de fotos en el foro de PHP en Foros del Web. Buenas! Tengo un problema que no se cómo solucionar... Resulta que en mi web, a veces hay imágenes muy grandes (los usuarios pueden subir imágenes), ...
  #1 (permalink)  
Antiguo 11/10/2012, 02:10
 
Fecha de Ingreso: abril-2012
Ubicación: 41°37′00″N, 00°37′00″E
Mensajes: 462
Antigüedad: 12 años, 1 mes
Puntos: 33
Resize de fotos

Buenas!

Tengo un problema que no se cómo solucionar...

Resulta que en mi web, a veces hay imágenes muy grandes (los usuarios pueden subir imágenes), y estoy buscando cómo optimizarlas.

Lo que pretendo hacer es redimensionar las imágenes para que se adapten lo máximo posible al espacio reservado.

He encontrado la siguiente "función" que desde luego es útil:

Código PHP:
Ver original
  1. header("Content-type: image/jpg");
  2.  
  3. $w = $_GET['w'];
  4. $h = $_GET['h'];
  5. $imatge = $_GET['i'];
  6.  
  7. $im = null;
  8.  
  9. if(stripos($imatge, ".gif")) $im = imagecreatefromgif($imatge);
  10. if(stripos($imatge, ".jpg")) $im = imagecreatefromjpeg($imatge);
  11. if(stripos($imatge, ".png")) $im = imagecreatefrompng($imatge);
  12.  
  13. list($wi,$hi) = getimagesize($imatge);
  14.  
  15. $w_scale = $w/$wi;
  16. $h_scale = $h/$hi;
  17.  
  18. if($w_scale<$h_scale){
  19.     $w = $wi*$w_scale;
  20.     $h = $hi*$w_scale;
  21. }else{
  22.     $w = $wi*$h_scale;
  23.     $h = $hi*$h_scale;
  24. }
  25.  
  26. $thumb = imagecreatetruecolor($w,$h);
  27.  
  28. imagecopyresampled ($thumb, $im, 0, 0, 0, 0, $w, $h, $wi, $hi);
  29. imagejpeg($thumb);

Pero el problema es que si la reducción es muy grande la imágen se ve fatal...

Y claro, una cosa es ganar tiempo de carga, y otra es hacerlo a costa de que la web pierda en calidad (se llegan a ver bastante pobres las imágenes muy reducidas).

Qué podría hacer?

Gracias
  #2 (permalink)  
Antiguo 11/10/2012, 04:01
 
Fecha de Ingreso: octubre-2012
Ubicación: Madrid
Mensajes: 16
Antigüedad: 11 años, 6 meses
Puntos: 2
Respuesta: Resize de fotos

Es muy sencillo

Supongo que quieres rescalar las fotos para que se vean siempre bien al adaptarlas a un determinado espacio.

Usa la librería phpThumb, busca documentación sobre ella, funciona muy bien y es famosa.

Un saludo.
  #3 (permalink)  
Antiguo 15/10/2012, 23:06
 
Fecha de Ingreso: abril-2012
Ubicación: 41°37′00″N, 00°37′00″E
Mensajes: 462
Antigüedad: 12 años, 1 mes
Puntos: 33
Respuesta: Resize de fotos

Gracias!

He estado probando la librería phpthumb...

Primero no me salían bien las fotos (me salían igual de borrosas que con la función de resize que posteé), pero luego probé el parametro "q" y si que se nota muchísimo el cambio.

Etiquetas: fotos, resize, 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 23:38.