PHP - redimensionar imagenes

   
Vista:

redimensionar imagenes

Publicado por Carla (5 intervenciones) el 15/07/2010 19:08:58
Hola,

Este código me redimensiona una imagen pero cuando voy a abrir la imagen, se ve negra y abriendo desde fireworks me dice que el tipo de archivo es desconocido. ¿por qué no me lo está haciendo bien? Gracias

<?
//phpinfo();

$tam = getimagesize("imagen.png");

if($tam[0] > 500 OR $tam[1] > 500)
{
cambiartam("imagen.png", "nuevaimagen.png", 200, 200);
}

function cambiartam($nombre, $archivo, $ancho, $alto)
{
$tmp = explode(".", $nombre);
//echo $tmp[0];
if (preg_match('/jpg|jpeg|JPG/',$tmp))
{
$imagen=imagecreatefromjpeg($nombre);
}
if (preg_match('/png|PNG/',$tmp))
{
$imagen=imagecreatefrompng($nombre);
}
if (preg_match('/gif|GIF/',$tmp))
{
$imagen=imagecreatefromgif($nombre);
}
$x=imageSX($imagen);
$y=imageSY($imagen);
if ($x > $y)
{
$w=$ancho;
$h=$y*($alto/$x);
}

if ($x < $y)
{
$w=$x*($ancho/$y);
$h=$alto;
}

if ($x == $y)
{
$w=$ancho;
$h=$alto;
}

$destino = imagecreatetruecolor($w,$h);
imagecopyresampled($destino,$imagen,0,0,0,0,$w,$h,$x,$y);
if (preg_match("/png/",$tmp))
{
imagepng($destino,$archivo);
}
if (preg_match("/gif/",$tmp))
{
imagegif($destino,$archivo);
}
else
{
imagejpeg($destino,$archivo);
}
imagedestroy($destino);
imagedestroy($imagen);

}

?>
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder