Saludos a todos.
Estoy desarrollando una galeria de imagenes mediante programacion. Lo que pretendo conseguir es reducir el tamaño de las imagenes. Y lo consigo, lo que ocurre es que las imagenes pierden calidad de color.
Aqui adjunto el codigo que utilizo a ver si alguien puede decirme donde esta el error.
Gracias por adelantado
<?php
//Declaramos las variables
$width = 100;
$height = 100;
$file = $_GET['image'];
// $file = "imagenes/puestadesol.jpg";
//Creamos la imagen
$im = imagecreate($width, $height);
$src_im = imagecreatefromjpeg($file);
//Asignamos los colores
$bg = imagecolorallocate($im, 200, 200, 200);
$white = imagecolorallocate($im, 255, 255, 255);
$black = imagecolorallocate($im, 0, 0, 0);
$margin_x = 10;
$margin_y = 10;
$w = $width-2*$margin_x;
$h = $height-2*margin_y;
$src_w = imagesx($src_im);
$src_h = imagesy($src_im);
//Desplegamos la imagen en la dimension original
if (($w > $src_w) && ($h > $src_h)) {
$dst_w = $src_w;
$dst_h = $src_h;
} elseif (($src_w/$src_h) > ($w/$h)) {
//o escalamos la imagen de acuerdo a la imagen horizontal
$dst_w = $w;
$dst_h = $w*$src_h/$src_w;
} else {
//o escalamos de acuerdo a la imagen vertical
$dst_w = $h*$src_w/$src_h;
$dst_h = $h;
}
imagecopyresized($im, $src_im, ($width-$dst_w)/2, ($height-$dst_h)/2, 0, 0, $dst_w, $dst_h, $src_w, $src_h);
//Cabecera correspondiente para la imagen de salida
header("Content-type:image/jpeg");
//Generamos la imagen
imagejpeg($im,"",75);
//destruimos la imagen
imagedestroy($im);
?>