Leadtools Namespace > RasterRegion Class > Combine Method : Combine(RasterRegion,RasterRegionCombineMode) Method |
public void Combine( RasterRegion region, RasterRegionCombineMode combineMode )
'Declaration Public Overloads Sub Combine( _ ByVal region As RasterRegion, _ ByVal combineMode As RasterRegionCombineMode _ )
'Usage Dim instance As RasterRegion Dim region As RasterRegion Dim combineMode As RasterRegionCombineMode instance.Combine(region, combineMode)
public void Combine( RasterRegion region, RasterRegionCombineMode combineMode )
-(BOOL)combineWithRegion:(LTRasterRegion*)region combineMode:(LTRasterRegionCombineMode)combineMode error:(NSError**)outError;
public void combine( RasterRegion region, RasterRegionCombineMode combineMode )
function Leadtools.RasterRegion.Combine(RasterRegion,RasterRegionCombineMode)( region , combineMode )
public: void Combine( RasterRegion^ region, RasterRegionCombineMode combineMode )
For more information, refer to RasterRegionCombineMode.
Imports Leadtools Imports Leadtools.Codecs Imports Leadtools.ImageProcessing Public Sub RasterRegionCombineRegionExample() Dim codecs As New RasterCodecs() Dim srcFileName As String = Path.Combine(LEAD_VARS.ImagesDir, "Image1.cmp") Dim destFileName As String = Path.Combine(LEAD_VARS.ImagesDir, "Image1_CombineRegion.bmp") ' Load the source image Using image As RasterImage = codecs.Load(srcFileName, 0, CodecsLoadByteOrder.BgrOrGray, 1, 1) ' Add a small elliptical region image.AddEllipseToRegion(Nothing, New LeadRect(0, 0, image.ImageWidth \ 3, image.ImageHeight \ 3), RasterRegionCombineMode.Set) ' Get this region Dim region1 As RasterRegion = image.GetRegion(Nothing) image.MakeRegionEmpty() ' Add a smaller elliptical region image.AddEllipseToRegion(Nothing, New LeadRect(0, 0, image.ImageWidth \ 4, image.ImageHeight \ 4), RasterRegionCombineMode.Set) ' Get this region Dim region2 As RasterRegion = image.GetRegion(Nothing) image.MakeRegionEmpty() ' Combine both regions to contain only the difference between the two region1.Combine(region2, RasterRegionCombineMode.Xor) region2.Dispose() ' Set this region to the image and fill it with yellow image.SetRegion(Nothing, region1, RasterRegionCombineMode.Set) region1.Dispose() Dim cmd As New FillCommand(RasterColor.FromKnownColor(RasterKnownColor.Yellow)) cmd.Run(image) codecs.Save(image, destFileName, RasterImageFormat.Bmp, 24) End Using codecs.Dispose() End Sub Public NotInheritable Class LEAD_VARS Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images" End Class
using Leadtools; using Leadtools.Codecs; using Leadtools.ImageProcessing; public void RasterRegionCombineRegionExample() { string srcFileName = Path.Combine(ImagesPath.Path, "Image1.cmp"); string destFileName = Path.Combine(ImagesPath.Path, "Image1_CombineRegion.bmp"); using (RasterCodecs codecs = new RasterCodecs()) { // Load the source image using (RasterImage image = codecs.Load(srcFileName, 0, CodecsLoadByteOrder.BgrOrGray, 1, 1)) { // Add a small elliptical region image.AddEllipseToRegion(null, new LeadRect(0, 0, image.ImageWidth / 3, image.ImageHeight / 3), RasterRegionCombineMode.Set); // Get this region RasterRegion region1 = image.GetRegion(null); image.MakeRegionEmpty(); // Add a smaller elliptical region image.AddEllipseToRegion(null, new LeadRect(0, 0, image.ImageWidth / 4, image.ImageHeight / 4), RasterRegionCombineMode.Set); // Get this region RasterRegion region2 = image.GetRegion(null); image.MakeRegionEmpty(); // Combine both regions to contain only the difference between the two region1.Combine(region2, RasterRegionCombineMode.Xor); region2.Dispose(); // Set this region to the image and fill it with yellow image.SetRegion(null, region1, RasterRegionCombineMode.Set); region1.Dispose(); FillCommand cmd = new FillCommand(RasterColor.FromKnownColor(RasterKnownColor.Yellow)); cmd.Run(image); codecs.Save(image, destFileName, RasterImageFormat.Bmp, 24); } } }
using Leadtools; using Leadtools.Codecs; using Leadtools.ImageProcessing; public async Task RasterRegionCombineRegionExample() { RasterCodecs codecs = new RasterCodecs(); string srcFileName = @"Assets\Image1.cmp"; string destFileName = "Image1_CombineRegion.bmp"; // Load the source image StorageFile loadFile = await Tools.AppInstallFolder.GetFileAsync(srcFileName); using (RasterImage image = await codecs.LoadAsync(LeadStreamFactory.Create(loadFile), 0, CodecsLoadByteOrder.BgrOrGray, 1, 1)) { // Add a small elliptical region image.AddEllipseToRegion(null, LeadRectHelper.Create(0, 0, image.ImageWidth / 3, image.ImageHeight / 3), RasterRegionCombineMode.Set); // Get this region RasterRegion region1 = image.GetRegion(null); image.MakeRegionEmpty(); // Add a smaller elliptical region image.AddEllipseToRegion(null, LeadRectHelper.Create(0, 0, image.ImageWidth / 4, image.ImageHeight / 4), RasterRegionCombineMode.Set); // Get this region RasterRegion region2 = image.GetRegion(null); image.MakeRegionEmpty(); // Combine both regions to contain only the difference between the two region1.Combine(region2, RasterRegionCombineMode.Xor); region2.Dispose(); // Set this region to the image and fill it with yellow image.SetRegion(null, region1, RasterRegionCombineMode.Set); region1.Dispose(); FillCommand cmd = new FillCommand(RasterColorHelper.FromKnownColor(RasterKnownColor.Yellow)); cmd.Run(image); StorageFile saveFile = await Tools.AppLocalFolder.CreateFileAsync(destFileName); ILeadStream saveStream = LeadStreamFactory.Create(saveFile); await codecs.SaveAsync(image, saveStream, RasterImageFormat.Bmp, 0); } codecs.Dispose(); }