public static PixelFormat GetNearestPixelFormat(
RasterImage image
)
image
The source image.
You can pass the value returned from this property to the MakeCompatible 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 image
using (RasterImage srcImage = codecs.Load(srcFileName))
{
// Convert to GDI+ image
ImageIncompatibleReason 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 disk
destImage1.Save(destFileName1, ImageFormat.Bmp);
// Convert the GDI+ image back to a RasterImage
using (RasterImage destImage2 = RasterImageConverter.ConvertFromImage(destImage1, ConvertFromImageOptions.None))
{
// Save it to disk
codecs.Save(destImage2, destFileName2, RasterImageFormat.Bmp, 24);
}
}
}
// Clean up
codecs.Dispose();
}
static class LEAD_VARS
{
public const string ImagesDir = @"C:\LEADTOOLS23\Resources\Images";
}