Declarationproperty AlphaChannel: TIEBitmap;
TIEBitmap handles the alpha channel as an encapsulated TIEBitmap object with pixelformat of ie8g. Pixels that are 0 (black) will be fully transparent, pixels of 255 are fully opaque, and values from 1 - 254 are partially transparent.
This property returns the associated AlphaChannel.
If an image doesn't have an alpha channel, you can create it just using AlphaChannel property.
To determine whether an image has an alpha channel, examine the HasAlphaChannel
File Formats and Alpha
In order to maintain the alpha channel when saving, you will need to choose a format that supports it. The most widely used image format with true alpha support is PNG.
Alpha Channel is supported by:
- BMP, if BMP_HandleTransparency
- JPEG 2000 with certain formats such as ioJ2000_RGB
- GIF, if GIF_FlagTranspColor
- Metafiles (WMF/EMF)
- TIFF (supported by some formats)
- WIC formats, such as HDP, WDP, HEIF, etc.
It is not supported by: AVI, Camera RAW, DCX, DICOM, JPEG, PCX
Example// Assign an alpha channel to an image using a source file
// For simple transparency, use a monochrome bitmap where the black pixels will become transparent
// Otherwise, a 256 color gray-scale image can provide a range of tranparency values (from white/fully opaque to black/fully transparent)
aBMP := TIEBitmap.create( 'D:\alpha.bmp' );
// Use our bitmap as the alpha channel
ImageEnView1.IEBitmap.AlphaChannel.Assign( aBMP );
// Ensure size of alpha channel matches size of image (and is ie8g)
// Update the container
Image to use for Alpha (Black will become transparent, gray will be 50% transparent and white will be fully opaque):
Result (on a white TImageEnView):
Example 2// Feather the border of a JPEG image
iebmp.Read( 'D:\image.jpg' );
iebmp.AlphaChannel; // Add alpha channel to image
iebmp.Resize(1, 1, 1, 1, clWhite, 0); // Add an alpha border