Tengo un script que redimensiona imágenes JPEG... lo he modificado, y he intentado hacer que redireccione a un ancho fijo y hacer el ancho solo (proporcionalmente).
Cuando el ancho es inferior al fijo (550px) funciona, pero cuando es mayor... Me pierdo
Este es el script:
Código PHP:
<?
$origen="img/12"; //Las imagenes son todas JPEG, pero con nombre numerico (id de imagen)
//Averiguar nuevo alto
$datosimg=getimagesize('img/12');
$ancho=$datosimg[0];
$alto=$datosimg[1];
if($ancho>550){
$difancho=550 - $ancho;
}else{
$difancho=$ancho - 550;
}
$nuevoalto=$alto + $difancho;
$destino="img/12";
$destino_temporal=tempnam("tmp/","tmp");
redimensionar_jpeg($origen, $destino_temporal, 550, $nuevoalto, 100);
// guardamos la imagen
$fp=fopen($destino,"w");
fputs($fp,fread(fopen($destino_temporal,"r"),filesize($destino_temporal)));
fclose($fp);
// mostramos la imagen
echo "<img src='img/12'>";
function redimensionar_jpeg($img_original, $img_nueva, $img_nueva_anchura, $img_nueva_altura, $img_nueva_calidad)
{
// crear una imagen desde el original
$img = ImageCreateFromJPEG($img_original);
// crear una imagen nueva
$thumb = imagecreatetruecolor($img_nueva_anchura,$img_nueva_altura);
// redimensiona la imagen original copiandola en la imagen
ImageCopyResized($thumb,$img,0,0,0,0,$img_nueva_anchura,$img_nueva_altura,ImageSX($img),ImageSY($img));
// guardar la nueva imagen redimensionada donde indicia $img_nueva
ImageJPEG($thumb,$img_nueva,$img_nueva_calidad);
ImageDestroy($img);
}
?>
Saludos
![sonriente](http://static.forosdelweb.com/fdwtheme/images/smilies/smile.png)