Images may or may not contain transparency. The transparent color is a RGB color for images that are not palletized (> 8 bits per pixel). For palletized images, the transparent color is an index to a color within the palette.
PNG supports transparent images that have one or more transparent colors. However, currently LEADTOOLS cannot handle more than one transparent color. Therefore, the first transparent color encountered by LEADTOOLS is used as the transparent color for the image.
When loading PNG images that have transparency, LEADTOOLS sets RasterImage.Transparent to 1 and sets RasterImage.TransparentColor to the transparent color. Please note that if the loaded PNG image is not palletized, then RasterImage.TransparentColor is set to an RGB color. If the loaded PNG image is palletized, RasterImage.TransparentColor is set to 0x010000XX, where XX is the index of the transparent color.
When an image that contains transparency (i.e. RasterImage.TransparentColor is set) is saved as PNG, the transparency information is saved automatically. This is true for all images, regardless of their bits/pixel.
Please note that some developers consider the alpha channel to contain transparency information. LEADTOOLS does not make that assumption. Transparency is implemented in LEADTOOLS as explained above. You can handle the alpha channel information using the Alpha channel methods. Some PNG files have an 8-bit palletized component (for the image) and 8-bit alpha information. For these files, CodecsImageInfo.BitsPerPixel is 8 and CodecsImageInfo.HasAlpha is set. By default (when passing 0 for nBitsPerPixel when calling the load methods), the image is loaded as 8 bits (the alpha information is ignored). To get the alpha information from these files, you need to load the image as 32 or 64-bit. In this case, the alpha information will be loaded in the alpha channel. LEADTOOLS does not save these 8+8 files.
Products |
Support |
Feedback: PNG Files and Transparency |
Introduction |
Help Version 19.0.2017.6.21
|
Raster .NET | C API | C++ Class Library | JavaScript HTML5
Document .NET | C API | C++ Class Library | JavaScript HTML5
Medical .NET | C API | C++ Class Library | JavaScript HTML5
Medical Web Viewer .NET
Your email has been sent to support! Someone should be in touch! If your matter is urgent please come back into chat.
Chat Hours:
Monday - Friday, 8:30am to 6pm ET
Thank you for your feedback!
Please fill out the form again to start a new chat.
All agents are currently offline.
Chat Hours:
Monday - Friday
8:30AM - 6PM EST
To contact us please fill out this form and we will contact you via email.