Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Extraña imagen imagecreatePNG

Estas en el tema de Extraña imagen imagecreatePNG en el foro de PHP en Foros del Web. Hola forosdelweb :). Tengo un ligero problema, que solo pasa al generar imágenes PNG en PHP: Esta es la imagen, y es como debería verse ...
  #1 (permalink)  
Antiguo 06/02/2013, 17:20
 
Fecha de Ingreso: septiembre-2012
Ubicación: Madrid
Mensajes: 89
Antigüedad: 9 años, 8 meses
Puntos: 1
Exclamación Extraña imagen imagecreatePNG

Hola forosdelweb :).

Tengo un ligero problema, que solo pasa al generar imágenes PNG en PHP:

Esta es la imagen, y es como debería verse de verdad:

http://2.bp.blogspot.com/_Zuzii37VUO...plates-com.png


Y la imagen la genero así:
Código HTML:
Ver original
  1. <img src="imagen.php" />

Código PHP:
Ver original
  1. <?php
  2.   $archivo = imagecreatefrompng("http://2.bp.blogspot.com/_Zuzii37VUO4/SdSQklhdvBI/AAAAAAAAEQU/-K-OReo6lig/s1600/www-btemplates-com.png");
  3.   header("Content-type: image/png");
  4.   header("Pragma: no-cache");
  5.   imagepng($archivo);
  6. ?>



Y se muestra así:
http://s2.subirimagenes.com/imagen/p...4427imagen.png


La verdad es que no entiendo nada, porque con los otros tipos de imágenes funciona a la perfección (jpg, gif, etc.)



Utilizo WampServer 2.2, PHP 5.3.8

Gracias de antemano :)!
  #2 (permalink)  
Antiguo 06/02/2013, 17:24
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 14 años, 1 mes
Puntos: 2534
Respuesta: Extraña imagen imagecreatePNG

Puede que se un tema con el canal alpha de la imagen, revisa la documentación al respecto.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 06/02/2013, 17:30
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 13 años, 9 meses
Puntos: 2236
Respuesta: Extraña imagen imagecreatePNG

Qué caso tiene usar GD [imagecreatefrompng() e imagepng()] si sólo piensas mostrarla?, creo que readfile() sería más que suficiente.
__________________
- León, Guanajuato
- GV-Foto
  #4 (permalink)  
Antiguo 06/02/2013, 17:58
 
Fecha de Ingreso: septiembre-2012
Ubicación: Madrid
Mensajes: 89
Antigüedad: 9 años, 8 meses
Puntos: 1
De acuerdo Respuesta: Extraña imagen imagecreatePNG

Muchísimas gracias jje :).


Código final:
Código PHP:
Ver original
  1. <?php
  2.   $archivo = "http://2.bp.blogspot.com/_Zuzii37VUO4/SdSQklhdvBI/AAAAAAAAEQU/-K-OReo6lig/s1600/www-btemplates-com.png";
  3.   header("Content-type: image/png");
  4.   header("Pragma: no-cache");
  5.   imagepng($archivo);
  6.   ob_clean(); // Lo usamos porque flush(); lo requiere
  7.   flush(); // Vaciar buffer (mostrar datos al usuario)
  8.   readfile($archivo); // Leer archivo
  9. ?>
  #5 (permalink)  
Antiguo 06/02/2013, 20:36
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 14 años, 1 mes
Puntos: 2534
Respuesta: Extraña imagen imagecreatePNG

Aún así tienes código innecesario.
Código PHP:
<?php
$archivo 
"http://2.bp.blogspot.com/_Zuzii37VUO4/SdSQklhdvBI/AAAAAAAAEQU/-K-OReo6lig/s1600/www-btemplates-com.png";
  
header("Content-type: image/png");
  
header("Pragma: no-cache");

  
readfile($archivo); // Leer archivo

// no hacer nada mas, sin 
?>
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #6 (permalink)  
Antiguo 07/02/2013, 08:04
 
Fecha de Ingreso: septiembre-2012
Ubicación: Madrid
Mensajes: 89
Antigüedad: 9 años, 8 meses
Puntos: 1
Respuesta: Extraña imagen imagecreatePNG

¿Por qué quitas

ob_clean(); // Lo usamos porque flush(); lo requiere
flush(); // Vaciar buffer (mostrar datos al usuario)

?? No es conveniente ponerlo?

Ups! Cierto jeje, quitar el ?> y poner el archivo en ANSI
  #7 (permalink)  
Antiguo 07/02/2013, 08:33
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 13 años
Puntos: 1517
Respuesta: Extraña imagen imagecreatePNG

No es necesario porque ob_flush lo que hace es exactamente lo que hace cuando termina el código, es decir imprimir el buffer.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #8 (permalink)  
Antiguo 07/02/2013, 09:00
 
Fecha de Ingreso: septiembre-2012
Ubicación: Madrid
Mensajes: 89
Antigüedad: 9 años, 8 meses
Puntos: 1
De acuerdo Respuesta: Extraña imagen imagecreatePNG

Ok, graciaas =).

Etiquetas: extraña
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 08:10.