Estoy haciendo unas miniaturas con PHP pero no me funciona con ninguna imagen PNG. El resultado es que la imagen "contiene errores" y no se muestra.
El código es igual para gif, jpg, jpeg y png. El de png es el siguiente:
Código PHP:
Ver original
$maxAlto = $_GET['alto']; $maxAncho = $_GET['ancho']; $id = $_GET['id']; /* AQUÍ SELECCIONO LA FOTO A REDIMENSIONAR */ $sql = "SELECT * FROM productos WHERE id=".$id; $ruta = "../".$fila->foto; /*ESTA ES LA EXTENSIÓN DE LA FOTO */ /*aquí empieza el código exclusivo de PNG */ //determina proporcion en unidades $ancho = $imgAncho/$maxAncho; $alto = $imgAlto/$maxAlto; // calcula la escala if($ancho>$alto) $scale = $maxAncho/$imgAncho; if($ancho<$alto) $scale = $maxAlto/$imgAlto; if($ancho==$alto) $scale = $maxAlto/$imgAlto;
Cabe destacar que lo mismo para jpg (cambiando las funciones imagePng por imageJpeg, y el resto igual) funciona perfectamente, pero el código superior nunca consigue hacerme una miniatura con una imagen PNG.
¿qué estoy haciendo mal?
Saludos.