Use RasterImageConverter.TestCompatible to determine if the image is compatible for creating a GDI+ Graphics object.
This allows you to create an infinite number of drawing capabilities such as paint, erase, color erase and brush, pen, spray gun, flood fill, color tube, text overlay, curve, line, rectangle, polygon, ellipse, freehand shapes, cut and paste, and more to use on the surface of this Leadtools.RasterImage.
For more information refer to RasterImage and GDI/GDI+.
using Leadtools;
using Leadtools.Codecs;
using Leadtools.Drawing;
public void RasterImageGdiPlusGraphicsContainerExample()
{
RasterCodecs codecs = new RasterCodecs();
string srcFileName = Path.Combine(LEAD_VARS.ImagesDir, "Image1.cmp");
string destFileName = Path.Combine(LEAD_VARS.ImagesDir, "Image1_CreateGdiPlusGraphics.bmp");
// Load the image
using (RasterImage image = codecs.Load(srcFileName))
{
// Create a graphics object for this image surface and draw something on it
using (RasterImageGdiPlusGraphicsContainer container = new RasterImageGdiPlusGraphicsContainer(image))
{
using (Graphics g = container.Graphics)
{
using (Brush b = new SolidBrush(Color.FromArgb(128, 0, 0, 0)))
{
g.FillEllipse(b, new Rectangle(0, 0, image.ImageWidth, image.ImageHeight));
}
}
}
// Save the image back on disk
codecs.Save(image, destFileName, RasterImageFormat.Bmp, 24);
}
codecs.Dispose();
}
static class LEAD_VARS
{
public const string ImagesDir = @"C:\LEADTOOLS23\Resources\Images";
}