Creación de PNG en PHP (¿es diferente de gif y jpg?)

votos
0

Tengo un formulario de carga de imágenes que debe tomar tipos de imágenes (PNG, JPEG, GIF), cambiar su tamaño y luego guardarlo en una ruta.

Por alguna razón, no puedo hacer que funcionen los tipos de archivos PNG, funciona bien con JPEG / GIF y el archivo se copia, por lo que parece que tiene que ver con la forma en que estoy creando el archivo PNG.

¿La creación PNG en PHP requiere diferentes parámetros u opciones? Algunos ejemplos de códigos de líneas que crean imágenes:

$src = imagecreatefrompng($uploadedfile);
imagecreatetruecolor($newWidth,$newHeight)
imagecopyresampled($tmp,$src,0,0,0,0,$newWidth,$newHeight,$width,$height);
imagepng($tmp,$destinationPath./.$destinationFile,100);

Los mismos comandos funcionan para JPG y GIF.

Publicado el 06/10/2008 a las 23:35
fuente por usuario
En otros idiomas...                            


4 respuestas

votos
2

Debes mirar cómo está construido tu PHP. Por ejemplo:

GD Support  enabled
GD Version  bundled (2.0.28 compatible) 
PNG Support     enabled 

Si no tiene el soporte PNG compilado, necesitará tenerlo actualizado.

Respondida el 06/10/2008 a las 23:47
fuente por usuario

votos
1

Descubrí el problema, solo un problema de no leer la API: P.

a diferencia de imagejpg()o imagegif(), imagepng()acepta un número entero de 0-9 para la compresión. así que estaba pasando 100 como un parámetro pensando que la calidad sería más alta, pero creo que la traté como la compresión máxima. Al pasar 0 resolvió el problema.

Tal vez la API ha cambiado desde las versiones de PHP?

Respondida el 07/10/2008 a las 00:14
fuente por usuario

votos
0

revisado y tengo soporte PNG:

'GIF Read Support' => boolean true 'GIF Create Support' => booleano true 'JPG Support' => booleano true 'PNG Support' => booleano true

gracias por la respuesta ... pensó que sería eso

Respondida el 06/10/2008 a las 23:57
fuente por usuario

votos
0

¿Estás empezando con imágenes PNG-8? Hay algunos problemas con PNG-8 vs PNG-24 cuando se trabaja con PHP. Asegúrese de que el soporte PNG esté compilado, luego eche un vistazo a esta solución de personas al problema PNG-8 .

Respondida el 06/10/2008 a las 23:54
fuente por usuario

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more