From: Andrew Poulos on
I tried asking in the stylsheets NG but there's been no response and as
Google has not saved me I'm wondering if there's a way to code around
this issue:

I have a number of 32 bit PNG images that have transparent sections in
them. The borders of these sections have anti aliased edges. The images
appear fine in IE (with IE 6 I use the AlphaImageLoader filter).

When an opacity style is also applied ie.
elem.style.filter = "alpha(opacity=50)";
the anti aliased edges display as solid black.

How can I keep the anti aliased edges as anti aliased? (Of course it
works fine in other browsers.)

MS proudly announced native PNG support for IE 4 - good to see they
still can't do them right ;-)

Andrew Poulos
From: "Michael Haufe ("TNO")" on
On Jan 14, 9:49 pm, Andrew Poulos <ap_p...(a)hotmail.com> wrote:
> I tried asking in the stylsheets NG but there's been no response and as
> Google has not saved me I'm wondering if there's a way to code around
> this issue:
>
> I have a number of 32 bit PNG images that have transparent sections in
> them. The borders of these sections have anti aliased edges. The images
> appear fine in IE (with IE 6 I use the AlphaImageLoader filter).
>
> When an opacity style is also applied ie.
>    elem.style.filter = "alpha(opacity=50)";
> the anti aliased edges display as solid black.

Have you tried embedding the images as VML images?
<v:image src="myPic.png"></v:image>

VML uses a different rendering engine so this will eliminate the need
for an AlphaImageLoader perhaps it may also help in this case.
From: Andrew Poulos on
On 15/01/2010 6:50 PM, Michael Haufe ("TNO") wrote:
> On Jan 14, 9:49 pm, Andrew Poulos<ap_p...(a)hotmail.com> wrote:
>> I tried asking in the stylsheets NG but there's been no response and as
>> Google has not saved me I'm wondering if there's a way to code around
>> this issue:
>>
>> I have a number of 32 bit PNG images that have transparent sections in
>> them. The borders of these sections have anti aliased edges. The images
>> appear fine in IE (with IE 6 I use the AlphaImageLoader filter).
>>
>> When an opacity style is also applied ie.
>> elem.style.filter = "alpha(opacity=50)";
>> the anti aliased edges display as solid black.
>
> Have you tried embedding the images as VML images?
> <v:image src="myPic.png"></v:image>
>
> VML uses a different rendering engine so this will eliminate the need
> for an AlphaImageLoader perhaps it may also help in this case.

VML introduces its own problems :-(

Andrew Poulos
From: Thomas 'PointedEars' Lahn on
Andrew Poulos wrote:

> Michael Haufe ("TNO") wrote:
>> Andrew Poulos wrote:
>>> I tried asking in the stylsheets NG but there's been no response and as
>>> Google has not saved me I'm wondering if there's a way to code around
>>> this issue:
>>>
>>> I have a number of 32 bit PNG images that have transparent sections in
>>> them. The borders of these sections have anti aliased edges. The images
>>> appear fine in IE (with IE 6 I use the AlphaImageLoader filter).
>>>
>>> When an opacity style is also applied ie.
>>> elem.style.filter = "alpha(opacity=50)";
>>> the anti aliased edges display as solid black.
>>
>> Have you tried embedding the images as VML images?
>> <v:image src="myPic.png"></v:image>
>>
>> VML uses a different rendering engine so this will eliminate the need
>> for an AlphaImageLoader perhaps it may also help in this case.
>
> VML introduces its own problems :-(

MSHTML 6 does not really support PNG alpha-channel transparency. Smarter
people have found that out years ago.¹ So why not face it and decide that
IE 6 users don't deserve PNGA?


PointedEars
___________
¹ <http://www.libpng.org/pub/png/pngstatus.html#browsers>
--
Danny Goodman's books are out of date and teach practices that are
positively harmful for cross-browser scripting.
-- Richard Cornford, cljs, <cife6q$253$1$8300dec7(a)news.demon.co.uk> (2004)
From: Andrew Poulos on
On 15/01/2010 10:46 PM, Thomas 'PointedEars' Lahn wrote:
> Andrew Poulos wrote:
>
>> Michael Haufe ("TNO") wrote:
>>> Andrew Poulos wrote:
>>>> I tried asking in the stylsheets NG but there's been no response and as
>>>> Google has not saved me I'm wondering if there's a way to code around
>>>> this issue:
>>>>
>>>> I have a number of 32 bit PNG images that have transparent sections in
>>>> them. The borders of these sections have anti aliased edges. The images
>>>> appear fine in IE (with IE 6 I use the AlphaImageLoader filter).
>>>>
>>>> When an opacity style is also applied ie.
>>>> elem.style.filter = "alpha(opacity=50)";
>>>> the anti aliased edges display as solid black.
>>>
>>> Have you tried embedding the images as VML images?
>>> <v:image src="myPic.png"></v:image>
>>>
>>> VML uses a different rendering engine so this will eliminate the need
>>> for an AlphaImageLoader perhaps it may also help in this case.
>>
>> VML introduces its own problems :-(
>
> MSHTML 6 does not really support PNG alpha-channel transparency. Smarter
> people have found that out years ago.¹ So why not face it and decide that
> IE 6 users don't deserve PNGA?

Even IE 7 and 8 show the anti aliased edges of a PNG as black when you
apply an opacity filter to the PNG.

Andrew Poulos