←Select platform

AddRegionToRegion(RasterImage,RasterRegionXForm,Region,RasterRegionCombineMode) Method

Summary
Creates or updates a LEADTOOLS image region by adding the specified GDI+ region.
Syntax
C#
C++/CLI
Python
public static void AddRegionToRegion( 
   RasterImage image, 
   RasterRegionXForm xform, 
   Region region, 
   RasterRegionCombineMode combineMode 
) 
public: 
static void AddRegionToRegion(  
   RasterImage^ image, 
   RasterRegionXForm^ xform, 
   Region^ region, 
   RasterRegionCombineMode combineMode 
)  
def AddRegionToRegion(self,image,xform,region,combineMode): 

Parameters

image
The source image.

xform
Leadtools.RasterRegionXForm object that LEADTOOLS uses to translate between display coordinates and image coordinates. If you specify null (Nothing in VB) in this parameter, the scalar fields default to 1, the offsets default to 0, and the view perspective defaults to the image view perspective.

region
The GDI+ region to add.

combineMode
The action to take regarding the existing image region, if one is defined.

Remarks

To update an existing region, you specify how the new region is to be combined with the existing one using the  combineMode parameter. For more information, refer to Leadtools.RasterRegionCombineMode.

For more information, refer to the following:

Example
C#
using Leadtools; 
using Leadtools.Codecs; 
using Leadtools.Drawing; 
using Leadtools.ImageProcessing; 
using Leadtools.ImageProcessing.Color; 
 
 
public void AddRegionToRegionGdip_Example() 
{ 
   RasterCodecs codecs = new RasterCodecs(); 
 
   string srcFileName = Path.Combine(LEAD_VARS.ImagesDir, "Image1.cmp"); 
   string destFileName1 = Path.Combine(LEAD_VARS.ImagesDir, "Image1_ConvertToRegion.bmp"); 
   string destFileName2 = Path.Combine(LEAD_VARS.ImagesDir, "Image1_AddRegionToRegion.bmp"); 
 
   // Load the image 
   RasterImage image = codecs.Load(srcFileName); 
 
   // Add an ellipse inside a rectangle region to the image 
 
   LeadRect rc = new LeadRect(image.Width / 3, image.Height / 3, image.Width / 3, image.Height / 3); 
   image.AddEllipseToRegion(null, rc, RasterRegionCombineMode.Set); 
 
   // Create a GDI+ image from this raster image, then obtain a Graphics 
   // object to the GDI+ image, apply the region to it then fill it with red color 
   Region region; 
 
   using (Image gdiPlusImage = RasterImageConverter.ConvertToImage(image, ConvertToImageOptions.None)) 
   { 
      using (Graphics graphics = Graphics.FromImage(gdiPlusImage)) 
      { 
         using (RasterRegion rasterRegion = image.GetRegion(null)) 
         { 
            region = RasterRegionConverter.ConvertToRegion(rasterRegion, null); 
            graphics.Clip = region; 
 
            // This call should only fill the ellipse 
            graphics.FillRectangle(Brushes.Red, 0, 0, image.Width, image.Height); 
         } 
      } 
 
      gdiPlusImage.Save(destFileName1, ImageFormat.Bmp); 
   } 
 
   // Empty the region in the raster image and re-add it through the 
   // region object we got with AddRegionToRegion 
   image.MakeRegionEmpty(); 
 
   RasterRegionConverter.AddRegionToRegion(image, null, region, RasterRegionCombineMode.Set); 
   FillCommand command = new FillCommand(); 
   command.Color = RasterColor.FromKnownColor(RasterKnownColor.Red); 
   command.Run(image); 
   codecs.Save(image, destFileName2, RasterImageFormat.Bmp, 24); 
 
   region.Dispose(); 
   image.Dispose(); 
   codecs.Dispose(); 
} 
 
static class LEAD_VARS 
{ 
   public const string ImagesDir = @"C:\LEADTOOLS22\Resources\Images"; 
} 
Requirements

Target Platforms

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

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