public static void AddRegionToRegion( RasterImage image, RasterRegionXForm xform, Region region, RasterRegionCombineMode combineMode )
'Declaration Public Overloads Shared Sub AddRegionToRegion( _ ByVal image As RasterImage, _ ByVal xform As RasterRegionXForm, _ ByVal region As Region, _ ByVal combineMode As RasterRegionCombineMode _ )
'Usage Dim image As RasterImage Dim xform As RasterRegionXForm Dim region As Region Dim combineMode As RasterRegionCombineMode RasterRegionConverter.AddRegionToRegion(image, xform, region, combineMode)
public static void AddRegionToRegion( RasterImage image, RasterRegionXForm xform, Region region, RasterRegionCombineMode combineMode )
function Leadtools.Drawing.RasterRegionConverter.AddRegionToRegion(RasterImage,RasterRegionXForm,Region,RasterRegionCombineMode)( image , xform , region , combineMode )
public: static void AddRegionToRegion( RasterImage^ image, RasterRegionXForm^ xform, Region^ region, RasterRegionCombineMode combineMode )
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 Creating a Region.
For more information, refer to Saving A Region.
For more information, refer to Working with the Existing Region.
For more information refer to RasterImage and GDI/GDI+.
Public Sub AddRegionToRegionGdip_Example() Dim codecs As New RasterCodecs() Dim srcFileName As String = LeadtoolsExamples.Common.ImagesPath.Path + "Image1.cmp" Dim destFileName1 As String = LeadtoolsExamples.Common.ImagesPath.Path + "Image1_ConvertToRegion.bmp" Dim destFileName2 As String = LeadtoolsExamples.Common.ImagesPath.Path + "Image1_AddRegionToRegion.bmp" ' Load the image Dim image As RasterImage = codecs.Load(srcFileName) ' Add an ellipse inside a rectangle region to the image Dim rc As New LeadRect(image.Width \ 3, image.Height \ 3, image.Width \ 3, image.Height \ 3) image.AddEllipseToRegion(Nothing, 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 Dim region As Region Using gdiPlusImage As Image = RasterImageConverter.ConvertToImage(image, ConvertToImageOptions.None) Using graphics As Graphics = graphics.FromImage(gdiPlusImage) Using rasterRegion As RasterRegion = image.GetRegion(Nothing) region = RasterRegionConverter.ConvertToRegion(rasterRegion, Nothing) graphics.Clip = region ' This call should only fill the ellipse graphics.FillRectangle(Brushes.Red, 0, 0, image.Width, image.Height) End Using End Using gdiPlusImage.Save(destFileName1, ImageFormat.Bmp) End Using ' Empty the region in the raster image and re-add it through the ' region object we got with AddRegionToRegion image.MakeRegionEmpty() RasterRegionConverter.AddRegionToRegion(image, Nothing, region, RasterRegionCombineMode.Set) Dim command As New FillCommand() command.Color = RasterColor.FromKnownColor(RasterKnownColor.Red) command.Run(image) codecs.Save(image, destFileName2, RasterImageFormat.Bmp, 24) region.Dispose() image.Dispose() codecs.Dispose() End Sub
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:\Users\Public\Documents\LEADTOOLS Images"; }
Target Platforms: Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2