f



PHP (GD) created transparent PNG: AlphaImageLoader makes black parts transparent instead of transparent color set with PHP

Hi all,

I have a problem with PHP (GD) created transparent PNG and Microsofts
AlphaImageLoader.

You will immediately see what the problem is if you view
http://www.useful-scripts.biz/test/transpng/transpng_2.php with IE 7
or Firefox and then with IE 6. It seems that the AlphaImageLoader
works correctly on a PNG image that has been created with an image
processor and then uploaded, but not with a PNG image created with
PHP. It seems to ignore the transparent color set with PHP and instead
to render the black color transparent.

The image in question was created using this code:

<?php 
$source = imagecreatefrompng("parrot_orig.png");
$transp = imagecolorallocate($source,255,0,0);
imagecolortransparent($source,$transp);
imagefilledrectangle($source,15,15,70,70,$transp);
imagepng($source,"parrot_php.png");
?>


The HTML used on the page is this:

<span
style="width:325;height:450px;display:inline-block;filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='parrot_orig.png');"><img
style="filter:progid:DXImageTransform.Microsoft.Alpha(opacity=0);"
src="parrot_php.png" width="325" height="450" border="0"
alt=""></span>
    PHP Version 4.4.3
    [GD Version] => bundled (2.0.28 compatible)
    [FreeType Support] => 1
    [FreeType Linkage] => with freetype
    [T1Lib Support] => 1
    [GIF Read Support] => 1
    [GIF Create Support] => 1
    [JPG Support] => 1
    [PNG Support] => 1
    [WBMP Support] => 1
    [XBM Support] => 1
    [JIS-mapped Japanese Font Support] => 1

Any idea what could cause this problem?
Thank you for considering it

Martin from Vienna
0
links (1)
12/27/2006 12:32:16 PM
comp.lang.php 32646 articles. 0 followers. Post Follow

1 Replies
22366 Views

Similar Articles

[PageSpeed] 45

On Wed, 27 Dec 2006 13:32:16 +0100, Martin wrote:
> Hi all,
>
> I have a problem with PHP (GD) created transparent PNG and Microsofts
> AlphaImageLoader.
>
> You will immediately see what the problem is if you view
> http://www.useful-scripts.biz/test/transpng/transpng_2.php with IE 7
> or Firefox and then with IE 6. It seems that the AlphaImageLoader
> works correctly on a PNG image that has been created with an image
> processor and then uploaded, but not with a PNG image created with
> PHP. It seems to ignore the transparent color set with PHP and instead
> to render the black color transparent.

FWIW, it all looks good in konqueror 3.3.2, Firefox 1.5, and Opera 9.

Also, FWIW, older Internet Exploders did not/could not/would not handle 
png images properly -- especially transparency.  Probably something to 
do with the convicted monopolist not supporting open standards.

Jonesy
-- 
  Marvin L Jones    | jonz          | W3DHJ  | linux
   38.24N  104.55W  |  @ config.com | Jonesy |  OS/2
    *** Killfiling google posts: <http//jonz.net/ng.htm>
0
bit-bucket (357)
12/27/2006 4:12:57 PM
Reply: