XP icons (32-bit with alpha channel)

With Windows XP, new icons with partial transparency were introduced: 32-bit icon images with an additional alpha channel (RGBA) or alpha-blended icons.

This image format combines a 24-bit image (16.8M colors, RGB i.e. Red Green Blue) with an 8-bit image called the alpha channel (A). In 32-bit icons the alpha channel plays the role of the mask. It specifies how the pixel's colors should be merged with another pixel (generally the background pixels) when the two are overlaid, one on top of the other.
You then get a smooth transparency for your icons and you can add interesting effects like shadows behind icons, like in Windows XP:

Alpha channels typically look like this:

Each pixel features 256 possible values (an alpha pixel is coded with one byte) from black (0) to white (255). The "value" of an alpha pixel actually represents the transparency level of the associated image pixel: a low value of the alpha pixel (near 0) will make the corresponding image pixel appear fully transparent, while a high value of the alpha pixel (near 255) will display the image pixel without any transparency.

GConvert knows how to create, read and write 32-bit icons. When you work on 32-bit icons, you will need to work on their alpha channel too, not only their icon image. That's why some functions in the icon editor also let you edit the alpha channel in addition to the icon image itself. You can also see the alpha channel of any icon thanks to the Alpha tab:

Alpha channel of XP icons

When converting icons to other formats, GConvert will "draw the alpha channel" (the semi-transparent pixels' colors will be merged with the output image background color) unless the exported format supports alpha channels too (like 32-bit bitmaps and PNG files). In this case, the alpha channel will be embedded into the output file automatically and the icon will look better. GConvert also can remove the alpha channel when converting an icon to a format that doesn't support partial transparency.

"What is an icon?"

How do I...