Foros del Web » Programando para Internet » PHP »

Condicionar tamaño de imagen

Estas en el tema de Condicionar tamaño de imagen en el foro de PHP en Foros del Web. Hola buenas, tengo la siguiente duda. Estoy redimencionando una imagen de la siguiente forma img_resize($foto ,$w=600,$h=0,$quality=100,$save=$foto1); necesitaria ponerle un if delante con una condicion que ...
  #1 (permalink)  
Antiguo 16/05/2007, 13:22
 
Fecha de Ingreso: mayo-2005
Mensajes: 94
Antigüedad: 18 años, 11 meses
Puntos: 0
Condicionar tamaño de imagen

Hola buenas, tengo la siguiente duda. Estoy redimencionando una imagen de la siguiente forma

img_resize($foto ,$w=600,$h=0,$quality=100,$save=$foto1);

necesitaria ponerle un if delante con una condicion que sea que si el ancho de la foto es mayor que 600, la redimencione, y si no, nada.

Como puedo hacerlo??

Saludos y mil gracias
  #2 (permalink)  
Antiguo 16/05/2007, 13:28
 
Fecha de Ingreso: marzo-2007
Mensajes: 347
Antigüedad: 17 años, 1 mes
Puntos: 2
Re: Condicionar tamaño de imagen

Con la funcion getimagesize, lo que hace esta funcion, es crear un array, con datos de la imagen, por ejemplo $var = getimagesize(imagen), $var[0] es el ancho, $var[1] el alto, asi que, la condicion es, if($var[0] > 600) {
se redimensiona
}

Y ta esta.

Un saludo
  #3 (permalink)  
Antiguo 16/05/2007, 13:38
Avatar de b3nj4  
Fecha de Ingreso: febrero-2002
Mensajes: 168
Antigüedad: 22 años, 2 meses
Puntos: 3
Re: Condicionar tamaño de imagen

Con lo que te ha comentado Francisco01 puedes extraer la información de la imagen (ancho y alto) luego puedes usar esto:

$img = 'dir-de-la-imagen.gif';
$origen = imageCreateFromJPEG($img);
$imagen = imageCreateTrueColor($nuevoAncho,$nuevoAlto);
ImageCopyResized($imagen,$origen,0,0,0,0,$nuevoAnc ho,$nuevoAlto,$imgAnchoOriginal,$imgAltoOriginal);
__________________
¿Quieres programas de diseño web en PortalProgramas?
  #4 (permalink)  
Antiguo 16/05/2007, 14:01
 
Fecha de Ingreso: mayo-2005
Mensajes: 94
Antigüedad: 18 años, 11 meses
Puntos: 0
Re: Condicionar tamaño de imagen

ok! gracias a los 2! utilice la opcion de francisco porque me parecio mas simple..
Funciona barbaro.. pero me surgio otro problemita mirad..

Código PHP:
if($foto_name !=""){
    
$strs explode(".",$foto_name);
    
$countcount($strs);
    
$extension ".".$strs[$count-1];
    
$fotonombre$data.$extension;    
    
$foto1"../../fotos/".$data.$extension;
    
$var23 getimagesize($foto);
    if(
$var23[0] > 600) {
    
img_resize($foto ,$w=600,$h=0,$quality=100,$save=$foto1);
    }

Bueno.. basicamente quedo asi.. la cuestion es que si se cumple el if, no hay ningun problema.. me guarda la imagen redimencionada.. pero el problema es que si es mas pequeña (si no se cumple el if) no me lo guarda.. necesitaria ponerle algo como

Código PHP:
    if($var23[0] > 600) {
    
img_resize($foto ,$w=600,$h=0,$quality=100,$save=$foto1);
    }else{ 
y meter aqui algo para que me la guarde tal y como esta 
Me explico?

GRacias!! saludoss
  #5 (permalink)  
Antiguo 16/05/2007, 14:29
 
Fecha de Ingreso: marzo-2007
Mensajes: 347
Antigüedad: 17 años, 1 mes
Puntos: 2
Re: Condicionar tamaño de imagen

Pero, no entiendo, que se supone que tienes que hacer si es msa pequeña? mostrarla? guardarla en una bd? o que, es que en el codi no veo nada, entonces.. xD

Un saludo
  #6 (permalink)  
Antiguo 16/05/2007, 14:31
 
Fecha de Ingreso: mayo-2005
Mensajes: 94
Antigüedad: 18 años, 11 meses
Puntos: 0
Re: Condicionar tamaño de imagen

jaja, perdona. Si se cumple la condicion la redimenciona y la guarda

img_resize($foto ,$w=600,$h=0,$quality=100,$save=$foto1);

Si no se cumple la condicion, necesito tan solo que la guarde.. que no toque el tamaño.. nose como guardar la imagen...

Me entiendes??

Saludos y gracias
  #7 (permalink)  
Antiguo 16/05/2007, 14:40
 
Fecha de Ingreso: marzo-2007
Mensajes: 347
Antigüedad: 17 años, 1 mes
Puntos: 2
Re: Condicionar tamaño de imagen

Pero me puedes decir, que parte del script, si se cumple la condicion, guarda la imagen?

es esta funcion? img_resize($foto ,$w=600,$h=0,$quality=100,$save=$foto1);?? y si es esa, es lo de $save=$foto?


Un saludo
  #8 (permalink)  
Antiguo 16/05/2007, 14:42
 
Fecha de Ingreso: mayo-2005
Mensajes: 94
Antigüedad: 18 años, 11 meses
Puntos: 0
Re: Condicionar tamaño de imagen

si.. si no me equivoco eso la guarda.. y la redimenciona.. pero me da igual cual usar.. cualquiera que guarde la foto me vale...

Sabes de alguna??

GRacias y saludos
  #9 (permalink)  
Antiguo 16/05/2007, 14:43
 
Fecha de Ingreso: marzo-2007
Mensajes: 347
Antigüedad: 17 años, 1 mes
Puntos: 2
Re: Condicionar tamaño de imagen

en el else, pon $save=$foto1;

Un saludo
  #10 (permalink)  
Antiguo 16/05/2007, 14:48
 
Fecha de Ingreso: mayo-2005
Mensajes: 94
Antigüedad: 18 años, 11 meses
Puntos: 0
Re: Condicionar tamaño de imagen

no me va.. jaja, no me entero de nada... mira, estoy llamando a este include... con la funcion...

Código PHP:
<?php

function img_resize($path,$w=0,$h=0,$quality=100,$save=''){

  
$image_data=@getimagesize($path);

  
$image_type=$image_data[2];
  
$gd_ext=array('','jpg','gif');
  if(
$image_type!=1&&$image_type!=2) return false;
  if(
$save==''header('Content-type: '.$image_data['mime']); else $save=eregi_replace('%ext',$gd_ext[$image_type],$save);

  if(
$w!=0){
   
$rapporto=$image_data[0]/$w;
   if(
$h!=0){
     if(
$image_data[1]/$rapporto>$h$rapporto=$image_data[1]/$h;
   }
  }elseif(
$h!=0){
   
$tmp_h=$image_data[1]/$h;
  }else{
   return 
false;
  }

  
$thumb_w=$image_data[0]/$rapporto;
  
$thumb_h=$image_data[1]/$rapporto;

  if(
$image_type==1$img_src=@imagecreatefromgif($path);
  elseif(
$image_type==2$img_src=@imagecreatefromjpeg($path);

  
$img_thumb=@imagecreatetruecolor($thumb_w,$thumb_h);
  
$result=@imagecopyresampled($img_thumb,$img_src,
0,0,0,0,$thumb_w,$thumb_h,$image_data[0],$image_data[1]);
  if(!
$img_src||!$img_thumb||!$result) return false;

  if(
$image_type==1$result=@imagegif($img_thumb,$save);
  elseif(
$image_type==2$result=@imagejpeg($img_thumb,$save,$quality);

  return 
$result;
}
?>
pero no lo entiendo.. como usarlo para guardar la imagen sin redimencionar...

Saludos, gracias
  #11 (permalink)  
Antiguo 16/05/2007, 14:52
 
Fecha de Ingreso: mayo-2005
Mensajes: 94
Antigüedad: 18 años, 11 meses
Puntos: 0
Re: Condicionar tamaño de imagen

perdona..jaja, ya lo solucione, de forma tonta pero lo solucione
aproveche la funcion que me explicaste y puse

img_resize($foto ,$w=$var23[0],$h=0,$quality=100,$save=$foto1);

aprovechando getimagesize.

Muchisimas gracias por tu ayuda y paciencia francisco

Saludoss
  #12 (permalink)  
Antiguo 16/05/2007, 14:57
 
Fecha de Ingreso: marzo-2007
Mensajes: 347
Antigüedad: 17 años, 1 mes
Puntos: 2
Re: Condicionar tamaño de imagen

Pues, se me ocurrio una cosa. mira:

if($var23[0] > 600) {
img_resize($foto ,$w=600,$h=0,$quality=100,$save=$foto1);
}else{
img_resize($foto ,$w=$var23[0],$h=0,$quality=100,$save=$foto1);
}

Prueba asi.

Un saludo
  #13 (permalink)  
Antiguo 16/05/2007, 14:58
 
Fecha de Ingreso: marzo-2007
Mensajes: 347
Antigüedad: 17 años, 1 mes
Puntos: 2
Re: Condicionar tamaño de imagen

Joer, me adelantaste por que estube ocupado 5 minutos xD. Bueno, me alegro de que ya este solucionado.

Un saludo
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 12:53.