PHP Bugs  
php.net | support | documentation | report a bug | advanced search | search howto | statistics | login

go to bug id or search bugs for  

Bug #28341 ImagePNG transparency broken on truecolor images
Submitted:10 May 2004 1:44am UTC Modified: 10 May 2004 4:25am UTC
From:info at silisoftware dot com Assigned to:
Status:Bogus Category:GD related
Version:4.3.6 OS:Windows XP Pro
View/Vote Developer Edit Submission

[10 May 2004 1:44am UTC] info at silisoftware dot com
Description:
------------
ImagePNG does not output transparent PNG images when in true-color mode,
but does when in paletted mode. Before this gets thrown in the bogus
pile as a browser issue - it's not - please download both these files
and open them in Photoshop and see whether or not the transparency is
recognized.

This issues was previously addressed
(http://bugs.php.net/bug.php?id=22323) but appears to be re-broken and
still not fixed in the latest version (4.3.6)

Reproduce code:
---------------
$Image = ImageCreateTrueColor(80,40);

$back  = ImageColorAllocate($Image,255,255,  0);
$red   = ImageColorAllocate($Image,255,  0,  0);
$green = ImageColorAllocate($Image,  0,255,  0);
$black = ImageColorAllocate($Image,  0,  0,  0);

ImageColorTransparent($Image, $back);
ImageFilledRectangle($Image,0,0,80,40,$back);
ImageArc($Image,20,20,32,32,120,0, $red);
ImageString($Image,5,20,20, 'hello', $black);

//ImageTrueColorToPalette($Image, true, 256);
ImagePNG($Image, 'c:/bad.png');

Expected result:
----------------
I expect this:
http://www.silisoftware.com/temp/imagepng-transparency/good.png

A red arc, black text on a transparent background. And I do get this if
I use the commented-out line above to convert the true color image to a
paletted image.

Actual result:
--------------
I get this:
http://www.silisoftware.com/temp/imagepng-transparency/good.png

A red arc, black text on a yellow (non-transparent) background.
[10 May 2004 1:46am UTC] info at silisoftware dot com
Correction on the URLs:

Expected Result:
http://www.silisoftware.com/temp/imagepng-transparency/good.png

Actual Result:
http://www.silisoftware.com/temp/imagepng-transparency/bad.png
[10 May 2004 2:25am UTC] magnus@php.net
Works fine here.

If you're using IE, change to a browser with a working png
implementation such as Mozilla Firefox.
[10 May 2004 2:33am UTC] info at silisoftware dot com
I'm not talking browser issues (as I said at the top of my bug report).
Please download the said images (or generate them yourself) and open
them with an image editor such as Photoshop and tell me whether or not
both images open with transparent backgrounds.
[10 May 2004 3:46am UTC] magnus@php.net
There's nothing wrong with either of them. Both works fine here with
Mozilla Firefox, gqview, gimp-2.0-pre and Konqueror all compiled against
libpng 1.2.5.
[10 May 2004 4:25am UTC] info at silisoftware dot com
Interesting. After a little more testing on available Windows software:

Both images have transparency in:
ImageMagick IMDisplay 1.0, Mozilla 1.6, Opera 7.23

"good" works, "bad" doesn't in:
IE 6, Adobe Photoshop 7, Adobe ImageReady 7, Paint Shop Pro 7

I'm not surprised that IE is broken, but I am surprised that the
graphics programs are all broken like that. I'm not sure who to pin the
blame on - encoding or decoding (I'm sure you'll leave this as bogus and
blame the decoders though ;)

RSS feed | show source 

PHP Copyright © 2001-2009 The PHP Group
All rights reserved.
Last updated: Sat Nov 21 10:30:49 2009 UTC