[FlagsAttribute()]public enum ConvertToImageOptions
| Value | Member | Description |
|---|---|---|
| 0x00000000 | None | Default |
| 0x00000001 | InitAlpha | Initialize the destination image alpha values if supported (when the result of the conversion is a 32 or 64-bit image). If this flagged is specified, the result image will always have an alpha value of all 1's (255 for 32-bit images or 65535 for 64-bit images) regardless of the alpha values in the source image. This can be useful when converting some 32-bit images that may have 0 for the alpha (such as BMP files) which translates into an GDI+ image that is completely transparent. If this flag is not specified, then the source image alpha values will be used as is. |
The ConvertToImageOptions are used as an options for the RasterImageConverter.ConvertToImage method.
For more information refer to RasterImage and GDI/GDI+.
using Leadtools;using Leadtools.Codecs;using Leadtools.Drawing;using Leadtools.ImageProcessing;using Leadtools.ImageProcessing.Color;public void ConvertToImageExample(){RasterCodecs codecs = new RasterCodecs();string srcFileName = Path.Combine(LEAD_VARS.ImagesDir, "Image1.cmp");string destFileName1 = Path.Combine(LEAD_VARS.ImagesDir, "GdiPlusImage.bmp");string destFileName2 = Path.Combine(LEAD_VARS.ImagesDir, "Image1_FromGdiPlusImage.bmp");// Load the imageusing (RasterImage srcImage = codecs.Load(srcFileName)){// Convert to GDI+ imageImageIncompatibleReason reason = RasterImageConverter.TestCompatible(srcImage, true);PixelFormat pf = RasterImageConverter.GetNearestPixelFormat(srcImage);Console.WriteLine("TestCompatible: {0}", reason);Console.WriteLine("GetNearestPixelFormat:{0}", pf);if (reason != ImageIncompatibleReason.Compatible){RasterImageConverter.MakeCompatible(srcImage, pf, true);}using (Image destImage1 = RasterImageConverter.ConvertToImage(srcImage, ConvertToImageOptions.None)){// Save this image to diskdestImage1.Save(destFileName1, ImageFormat.Bmp);// Convert the GDI+ image back to a RasterImageusing (RasterImage destImage2 = RasterImageConverter.ConvertFromImage(destImage1, ConvertFromImageOptions.None)){// Save it to diskcodecs.Save(destImage2, destFileName2, RasterImageFormat.Bmp, 24);}}}// Clean upcodecs.Dispose();}static class LEAD_VARS{public const string ImagesDir = @"C:\LEADTOOLS23\Resources\Images";}