67 out of 183 rated this helpful Rate this topic

AlphaImageLoader Filter

.NET Framework 3.0

This topic documents a feature of Visual Filters and Transitions, which is deprecated as of Windows Internet Explorer 9.

Displays an image within the boundaries of the object and between the object background and content, with options to clip or resize the image. When loading a Portable Network Graphics (PNG) image, tranparency from zero to 100 percent is supported.

Syntax

HTML
<ELEMENT STYLE=
"filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(sProperties)"
... >
Internet Explorer 5.5 or later
Scripting
object .style.filter =
"progid:DXImageTransform.Microsoft.AlphaImageLoader(sProperties)"
Internet Explorer 5.5 or later

Possible Values

sProperties String that specifies one or more properties exposed by the filter.

Members Table

The following table lists the members exposed by the AlphaImageLoader object.

Attributes/Properties
Attribute Property Description
enabled Enabled

Sets or retrieves a value that indicates whether the filter is enabled.

sizingMethod sizingMethod

Sets or retrieves the manner in which to display an image within the boundary of the object that the AlphaImageLoader filter is applied to.

src src

Sets or retrieves the URL of an image that the AlphaImageLoader filter loads.

Remarks

The src property has no default and must be defined for this filter to affect the object's display.

Transparency for PNG images is respected during text selection. This means the user can select content that is displayed behind the fully transparent region of a PNG image.

The object that the filter is applied to must have layout before the filter effect will display. You can give the object layout by setting the height or width property, setting the position property to absolute, setting the writingMode property to tb-rl, or setting the contentEditable property to true.

In standards mode, empty div elements do not display. If your filtered elements do not show up, make sure you set the div's height and width property to the size of your image , or fill the div with a non-breaking space ( &nbsp; ) . You can test your page under different document modes by using the Developer Tools on Internet Explorer 8.

You can assign multiple filters or transitions to an object by declaring each in the filter property of the object. The following div declaration assigns two filters and a Wheel transition to a div element.


<DIV STYLE="width:100%; filter:
    progid_DXImageTransform.Microsoft.MotionBlur(strength=13, direction=310)
    progid_DXImageTransform.Microsoft.Blur(pixelradius=2)
    progid_DXImageTransform.Microsoft.Wheel(duration=3);">
        Blurry text with smudge of gray.</div>     
When multiple filters are applied to an object, each filter is processed in source order, with the exception of procedural surfaces, which are computed first. To emphasize a filter's effect, place it last in source order or on the object's parent. Always place transitions last in source order.

Examples

Click the button below to view a demonstration of the advantages of using the AlphaImageLoader filter to display PNG images over that of GIF images.

Code example: http://samples.msdn.microsoft.com/workshop/samples/author/filter/AlphaImageLoader.htm

The following example loads a div element with an image expanded to a 250-pixel square and then uses the sizingMethod property to change between the default, 100-pixel size and the expanded, 250-pixel size. The filters collection is used to reference the div element's filter properties.


<SCRIPT>
var bToggle = 1

<!-- Toggle the sizingMethod property to resize the image.  -->
function fnToggle(oObj) {
    if (bToggle) {                                                        
        bToggle = 0;
        oDiv.filters(0).sizingMethod="image";
        oObj.innerText='Enlarge It';}
    else {
        bToggle = 1;
        oDiv.filters(0).sizingMethod="scale";
        oObj.innerText='Make Normal';}
}
</SCRIPT>
        
<!-- This DIV is the target container for the image.  -->        
    <DIV ID="oDiv" STYLE="position:relative; height:250px; width:250px;         
        filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(
            src='/workshop/graphics/earglobe.gif', sizingMethod='scale');" >
        </DIV>

<BR><BUTTON onclick="fnToggle(this);">Make Normal</BUTTON>


Code example: http://samples.msdn.microsoft.com/workshop/samples/author/filter/AlphaImageLoader_0.htm

Applies To

A, ABBR, ACRONYM, ADDRESS, B, BDO, BIG, BLOCKQUOTE, BODY, BUTTON, CAPTION, CENTER, CITE, CODE, CUSTOM, DD, DEL, DFN, DIR, DIV, DL, DT, EM, FIELDSET, FONT, FORM, FRAME, hn, IFRAME, I, INS, IMG, INPUT type=button, INPUT type=checkbox, INPUT type=file, INPUT type=image, INPUT type=password, INPUT type=radio, INPUT type=reset, INPUT type=submit, INPUT type=text, KBD, LABEL, LEGEND, LI, MARQUEE, MENU, NOBR, OL, OBJECT, P, PLAINTEXT, PRE, Q, RT, RUBY, S, SAMP, SMALL, SPAN, STRIKE, STRONG, SUB, SUP, TABLE, TEXTAREA, TH, TD, TT, U, UL, VAR, XMP
Did you find this helpful?
(2000 characters remaining)
Community Content Add
Annotations FAQ
LAWL ie
question to any microsoft support person $0why do you still offer a web browser if its complete ***?$0 $0learn to update faster i mean jesus why is it taking so long to be full compliant with html5$0 $0what do you have 5 coders?$0
AlphaImageLoader on https sites?

I tried https://example.com/try.htm but transparency did not work. Any workaround for this?

[tfl - 10 08 09] Hi - and thanks for your post. You should post questions like this to the MSDN Forums at http://forums.microsoft.com/msdn or the MSDN Newsgroups at

http://www.microsoft.com/communities/newsgroups/en-us/ . You are much more likely get a quicker response using the forums than through the Community Content. For specific help about:
Visual Studio :
http://groups.google.com/groups/dir?sel=usenet%3Dmicrosoft.public.vstudio%2C &
SQL Server :
http://groups.google.com/groups/dir?sel=usenet%3Dmicrosoft.public.sqlserver%2C &
.NET Framework :
http://groups.google.com/groups/dir?sel=usenet%3Dmicrosoft.public.dotnet.framework
PowerShell : http://groups.google.com/group/microsoft.public.windows.powershell/topics?pli=1

This is crazy
Why doesn't IE have native support for PNG like Opera, Safari or FF?
Why do you have to be - almost - always different and - almost - always worse?


"Any fool can make things bigger, more complex, and more violent. It takes a touch of genius - and a lot of courage - to move in the opposite direction."
Albert Einstein
Catch 22 for cross browser

Actually here is a better use of the AlphaImageLoader fix that would avoid the use of conditional statements for use with crossbrowser support(as well as cross version for IE 5.5 and up)

Keep in mind that I replaced the open/close characters for tags "<>" with "@" symbols so that I can plug in this span and img tags into this comment area. The tag input field for this forum butchers my example. Just replace the "@" symbols with the correct open/close tag character.

"@span style="position: absolute; z-index: 100; left: 500px; top: 100px; width: 420px; display: inline-block; filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/photoStack.png',sizingMethod='scale');"@@img style="filter:progid:DXImageTransform.Microsoft.Alpha(opacity=0);" src="images/photoStack.png" width="420" border="0"@@/span@"

You have to ensure there are no spaces between the span and image tags. The width (and height if it is used) declarations must be the same in both the span and image tags. The size adjusting attributes must be present in both tags. As you can see, you only need to use positioning attributes in the span tag.

png file created by a script like php in src attribute
Can src attribute in filter:progid:DXImageTransform.Microsoft.AlphaImageLoader have png file created by a script like php which does not have a png file url but a script url? 

I tried this, but the filter does not seem to be applied correctly, the whole image becomes white.
anyway
userxyz is right. Why the f*!/ing heck are you rejecting to support png24 easily?! It's hard enough for designers to get over the developing stuff and you are forcing them to cope with that junk!
Only affected to background images
This fix only works for background images
For img tags you can use a JavaScript