Jump to content

PHP (GD) created transparent PNG and Microsofts AlphaImageLoader


Recommended Posts

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 [url=http://www.useful-scripts.biz/test/transpng/transpng_2.php]http://www.useful-scripts.biz/test/transpng/transpng_2.php[/url] 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:

[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");
?>[/code]

The HTML used on the page is this:

[code]<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>[/code]

    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
That's right, in Firefox you can see the transparency. The problem is that IE prior to IE 7 cannot deal with PNG alpha transparency except with a special filter, the AlphaImageLoader. And this seems to see PHP created transparency differently somehow.
Check out this user submission and the ones around it.  Might help.

[url=http://www.php.net/manual/en/function.imagecolortransparent.php#48912]http://www.php.net/manual/en/function.imagecolortransparent.php#48912[/url]
This thread is more than a year old. Please don't revive it unless you have something important to add.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.