Funcion en PHP para escalar imagenes
/**********************************
Funcion para escalar imagenes
-----------------------------
$original = Ruta y nombre de la imagen original
$nombre = Ruta y nombre de la nueva imagen (si no se coloca imprime la imagen nuava directamente al explorador)
$maxA = Maximo ancho de la nueva imagen
$calidad = La calidad con la que se generara la nueva imagen (0-100)
************************************/
function imagenEscalar($original, $nombre, $maxA, $calidad) {
$src=@imagecreatefromjpeg($original);
if(!$src){
return false;
}else{
$srcw=imagesx($src);
$srch=imagesy($src);
if($srcw<$srch){
$height=$maxA;
$width=floor($srcw*$height/$srch);
}else{
$width=$maxA;
$height=floor($srch*$width/$srcw);
}
if ($width>$srcw && $height>$srch){
$width=$srcw;
$height=$srch;
}
$thumb=imagecreatetruecolor($width, $height);
if($height<100){
imagecopyresized($thumb, $src, 0, 0, 0, 0, $width, $height, imagesx($src), imagesy($src));
}else{
imagecopyresampled($thumb, $src, 0, 0, 0, 0, $width, $height, imagesx($src), imagesy($src));
}
imagejpeg($thumb, $nombre);
return true;
}
}
Esta funcion es solo para imagenes jpeg pero no es dificil agregar los otros tipos de imagenes.
