English

FAQ: Why are semi-transparent GraphicsLayers not displaying transparency as expected after upgrading to the 9.3 .NET Web ADF?

Question

Why are semi-transparent GraphicsLayers not displaying transparency as expected after upgrading to the 9.3 .NET Web ADF?

Answer

Due to a bug in the 9.2 .NET Web ADF, in-memory GraphicsResources that use the default image format of PNG8 do not actually use the PNG8 format. The image format returned consists of PNG32 images using 24-bit RGB color and 8 additional bits for transparency.

This bug has been addressed for 9.3.

Due to this fix, the PNG32 format should now be used on graphics resources when using semi-transparent symbols on graphics layers. The default format of PNG8 only supports 1-bit transparency, meaning the image is fully transparent or fully opaque. PNG32 is the only image format that supports semi-transparency.

See the example below:

Semi-transparent fill symbol using PNG8 (left) and PNG32 (right)

[O-Image]
This is not to be confused with the transparency setting on the DisplaySettings of the MapResourceItem. This property did not change and allows a single transparency value to be applied to a whole resource regardless of the image format.