Foros del Web » Programando para Internet » PHP »

Warning: imagepng() [function.imagepng]: gd-png: fatal libpng error: zlib failed to i

Estas en el tema de Warning: imagepng() [function.imagepng]: gd-png: fatal libpng error: zlib failed to i en el foro de PHP en Foros del Web. Hola amigos, me acabo de dar cuenta de un error en mi galeria de imagenes el cual logro solucionar pero me sale otro jejej, el ...
  #1 (permalink)  
Antiguo 04/06/2009, 10:59
Avatar de rompeguesos  
Fecha de Ingreso: marzo-2009
Mensajes: 692
Antigüedad: 15 años, 1 mes
Puntos: 8
Pregunta Warning: imagepng() [function.imagepng]: gd-png: fatal libpng error: zlib failed to i

Hola amigos, me acabo de dar cuenta de un error en mi galeria de imagenes el cual logro solucionar pero me sale otro jejej, el error es este:

Warning: imagepng() [function.imagepng]: gd-png: fatal libpng error: zlib failed to initialize compressor -- stream error in /mnt/web7/32/27/51920027/htdocs/coriaweb/artistas/jacobo/redimensionar.php on line 36

Warning: imagepng() [function.imagepng]: gd-png error: setjmp returns error condition in /mnt/web7/32/27/51920027/htdocs/coriaweb/artistas/jacobo/redimensionar.php on line 36

Se trata de que cuando subo imagenes PNG me da el error pero no en todas la png solo en algunas, (las que le da la gana), buscando por el foro encontre una solucion a mi codigo ,mi codigo es este:

Código PHP:
<?php
function crearThumb$fuente$destino$dim=120$propor=false$forzar=false ) { 
        
$tipo_imagen explode"."$fuente ); 
        
$sizeof count$tipo_imagen ) - 1
        
$ext strtolower$tipo_imagen[$sizeof] ); 
        if ( 
$ext == "gif" ) { 
            
$fuenteimg = @imagecreatefromgif$fuente ); 
        } 
        elseif ( 
$ext == "png" ) { 
            
$fuenteimg = @imagecreatefrompng$fuente ); 
        } 
        else { 
            
$fuenteimg = @imagecreatefromjpeg$fuente ); 
        } 
        list( 
$ancho$alto$tipo$atr ) = getimagesize$fuente ); 
        if ( 
$ancho $dim || $alto $dim || $forzar ) { 
            if ( 
$propor ) { 
                if ( 
$ancho $alto ) { 
                    
$nAncho $dim
                    
$nAlto $dim/( $ancho/$alto ); 
                } else { 
                    
$nAlto $dim
                    
$nAncho $dim/( $alto/$ancho ); 
                } 
            } else { 
                
$nAncho $dim
                
$nAlto $dim
            } 
            
$thumb imagecreatetruecolor$nAncho$nAlto ); 
            
imagecopyresampled$thumb$fuenteimg0000$nAncho$nAlto$ancho$alto ); 
            
$calidad 100
            if ( 
$ext == "gif" ) {  
                
imagegif$thumb$destino$calidad);  
            }  
            elseif ( 
$ext == "png" ) { 
                
imagepng$thumb$destino$calidad); 
            } 
            else { 
                
imagejpeg$thumb$destino$calidad); 
            } 
        } 
    }  
?>
La solucion trata de que donde indico $calidad = 100; tiene que ser un numero del 0 al 9 y asi si funciona pero el problema es que si pongo uno de esos numeros los otros tipos de imagenes JPEG, GIF se ven fatal.

¿Algun modo de solucionarlo?
  #2 (permalink)  
Antiguo 04/06/2009, 11:09
Avatar de jfl_freak  
Fecha de Ingreso: enero-2009
Ubicación: Guatemala
Mensajes: 96
Antigüedad: 15 años, 3 meses
Puntos: 1
Respuesta: Warning: imagepng() [function.imagepng]: gd-png: fatal libpng error: zlib

Pues mira, estaba buscando en la red sobre tu problema y encontre esta solucion:

Código HTML:
http://www.coderemix.com/tutorials/imagepng-fatal-libpng-error
Espero sirva de ayuda.

Saludos
  #3 (permalink)  
Antiguo 04/06/2009, 11:17
Avatar de rompeguesos  
Fecha de Ingreso: marzo-2009
Mensajes: 692
Antigüedad: 15 años, 1 mes
Puntos: 8
Respuesta: Warning: imagepng() [function.imagepng]: gd-png: fatal libpng error: zlib

no entiendo mucho de ingles pero por lo que e logrado ver creo que dice la solucion que yo decia de poner un numero entre el 0 y el 9 no? pero si es asi porque los jpeg se me ven tan mal?
  #4 (permalink)  
Antiguo 05/03/2010, 10:26
 
Fecha de Ingreso: marzo-2010
Ubicación: Costa Rica
Mensajes: 1
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: Warning: imagepng() [function.imagepng]: gd-png: fatal libpng error: zlib

los rangos son 1-10 para png y 1-100 para jpeg

Última edición por GatorV; 05/03/2010 a las 13:16 Razón: url not working as expected
  #5 (permalink)  
Antiguo 06/10/2010, 01:02
 
Fecha de Ingreso: febrero-2010
Mensajes: 6
Antigüedad: 14 años, 3 meses
Puntos: 0
Respuesta: Warning: imagepng() [function.imagepng]: gd-png: fatal libpng error: zlib

Y bueno viejo, deja de matarte y en el

elseif ( $ext == "png" ) {
imagepng( $thumb, $destino, $calidad);

agarras y le pones asi mira...
elseif ( $ext == "png" ) {
imagepng( $thumb, $destino, substr($calidad,0,1));

entonces si tu numero de calidad vien por la variables de la funcion, vas a tener siempre el primer digito... y listo!!!



A mi me ayudaste pq derrepente me empezo a tirar el mismo error que a vos y llegue hasta aca y lei tu post que fue como un milagro para mi... jeje
Salutes

Última edición por mayonero; 06/10/2010 a las 01:04 Razón: me falto algo de texto....
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 05:55.