←Select platform

ConvertFromRegion Method

Summary
Converts a System.Drawing (GDI+) System.Drawing.Region object to a LEADTOOLS Leadtools.RasterRegion.
Syntax
C#
C++/CLI
Python
public static RasterRegion ConvertFromRegion( 
   Region region 
) 
public: 
static RasterRegion^ ConvertFromRegion(  
   Region^ region 
)  
def ConvertFromRegion(self,region): 

Parameters

region
The source GDI+ region. This parameter cannot be null (Nothing in VB).

Return Value

The LEADTOOLS Leadtools.RasterRegion object this method creates. You must dispose this object after using it.

Remarks

The LEADTOOLS Leadtools.RasterRegion class provides a platform independent representation of an area of interest in a Leadtools.RasterImage that can be used in any platform supported by LEADTOOLS such as GDI, GDI+, and WPF. Use this class To convert a LEADTOOLS Leadtools.RasterRegion object to/from a GDI HRGN and System.Drawing (GDI+) System.Drawing.Region object.

For more information refer to RasterImage and GDI/GDI+.

Example
C#
using Leadtools; 
using Leadtools.Codecs; 
using Leadtools.Drawing; 
using Leadtools.ImageProcessing; 
using Leadtools.ImageProcessing.Color; 
 
 
public void RasterRegionConverterExample() 
{ 
   // Load an image  
   string srcFileName = Path.Combine(LEAD_VARS.ImagesDir, "Image1.cmp"); 
   string dstFileName1 = Path.Combine(LEAD_VARS.ImagesDir, "Image1_Ellipse.jpg"); 
   string dstFileName2 = Path.Combine(LEAD_VARS.ImagesDir, "Image1_EllipseTranslated.jpg"); 
 
   RasterCodecs codecs = new RasterCodecs(); 
 
   RasterImage image = codecs.Load(srcFileName); 
 
   // We will add an ellipse region to the image 
 
   // Using GDI+, create an elliptical region 
   Region gdipRegion; 
 
   using (GraphicsPath path = new GraphicsPath()) 
   { 
      path.AddEllipse(100, 200, 400, 300); 
      gdipRegion = new Region(path); 
   } 
 
   // Create a RasterRegion from this region 
   using (RasterRegion region = RasterRegionConverter.ConvertFromRegion(gdipRegion)) 
   { 
      // Add this region to the image 
      image.SetRegion(null, region, RasterRegionCombineMode.Set); 
   } 
 
   gdipRegion.Dispose(); 
 
   // Fill the image with a color 
   FillCommand cmd = new FillCommand(RasterColor.FromKnownColor(RasterKnownColor.Red)); 
   cmd.Run(image); 
 
   // Save it 
   codecs.Save(image, dstFileName1, RasterImageFormat.Jpeg, 24); 
 
   // Now get the GDI+ region from the image 
   using (RasterRegion region = image.GetRegion(null)) 
   { 
      // Convert it to GDI+ 
      gdipRegion = RasterRegionConverter.ConvertToRegion(region, null); 
   } 
 
   // Move the region 100 pixels to the right and bottom 
   gdipRegion.Translate(100, 100); 
 
   // Re-set it into the image, fill again and save 
   // Create a RasterRegion from this region 
   using (RasterRegion region = RasterRegionConverter.ConvertFromRegion(gdipRegion)) 
   { 
      // Add this region to the image 
      image.SetRegion(null, region, RasterRegionCombineMode.Set); 
   } 
 
   gdipRegion.Dispose(); 
 
   // Fill the image with a color 
   cmd = new FillCommand(RasterColor.FromKnownColor(RasterKnownColor.Yellow)); 
   cmd.Run(image); 
 
   // Save it 
   codecs.Save(image, dstFileName2, RasterImageFormat.Jpeg, 24); 
 
   image.Dispose(); 
 
   codecs.Dispose(); 
} 
 
static class LEAD_VARS 
{ 
   public const string ImagesDir = @"C:\LEADTOOLS23\Resources\Images"; 
} 
Requirements

Target Platforms

Help Version 23.0.2024.2.29
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2024 LEAD Technologies, Inc. All Rights Reserved.

Leadtools.Drawing Assembly
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.