Hola de nuevo.
Estoy creando un administrador de contenidos que sube imágenes, las renombre y les cambia el tamaño. El código que uso siempre me ha funcionado bien, sin embargo en esta ocasión las imágenes suben y se renombran correctamente pero al redimensionarlas el tamaño cambia al deseado pero no se reducen sino que se recortan desde la esquina superior izquierda al tamaño que defino.
Cual puede ser el error?
Dejo el código por si requiere revisión aunque estoy casi seguro que el problema no está ahí.
Gracias por la ayuda
//llamo la función para cambiar el tamaño
function image_gd($file)
{
$extension = explode(".",$file);
$ext = count($extension)-1;
if($extension[$ext] == "jpg" || $extension[$ext] == "jpeg")
{
$image = ImageCreateFromJPEG($file);
}
$thumb_name = substr($file,0,-4);
$width = imagesx($image);
$height = imagesy($image);
$nueva_anchura = $width;
$nueva_altura = $height;
if($width > 580){
$nueva_anchura = 580;
$nueva_altura = ($nueva_anchura * $height) / $width ;
$height = $nueva_altura;
}
if($height > 435){
$nueva_altura = 435;
$nueva_anchura = ($nueva_altura * $width) / $height ;
}
if (function_exists("imagecreatetruecolor"))
{
$thumb = ImageCreateTrueColor($nueva_anchura, $nueva_altura);
}
if (!$thumb) $thumb = ImageCreate($nueva_anchura, $nueva_altura);
ImageCopyResized($thumb, $image, 0, 0, 0, 0, $nueva_anchura, $nueva_altura, $width, $height);
ImageJPEG($thumb, "".$thumb_name.".jpg", 99);
imagedestroy($image);
return $image;
}
//llamo la función
if($imagen1 != ""){
image_gd($imagen1);
}