←Select platform

Flags Property (CombineCommand)

Summary

Gets or sets flags from seven groups that define treatment of the source, treatment of the destination, the operation to use when combining the data, treatment of the resulting image, and the color planes for the destination, source and resulting images.

Syntax

C#
VB
Java
Objective-C
WinRT C#
C++
@property (nonatomic, assign) LTCombineCommandFlags flags
public int getFlags() 
public void setFlags(int value) 
get_Flags(); 
set_Flags(value); 
Object.defineProperty('Flags'); 

Property Value

Value that represents the flags. The flags apply only to the defined rectangles (not necessarily the entire image). You can use a bitwise OR ( ¦ ) to specify one flag from each group.

Remarks

If the user did not set any of the following flags:

Then the CombineCommand will internally use the SourceMaster, which means that all channels (red, green and blue) will be used from the source image. If the user did not set any of the following flags:

Then the CombineCommand will internally use the DestinationMaster, which means that all channels (red, green and blue) will be used from the destination image.

Example

C#
VB
WinRT C#
Imports Leadtools 
Imports Leadtools.Codecs 
Imports Leadtools.ImageProcessing.Effects 
 
     
 Public Sub CombineCommandMasterChannelExample() 
    Dim codecs As New RasterCodecs() 
    codecs.ThrowExceptionsOnInvalidImages = True 
  Dim leadImage As RasterImage = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "ImageProcessingDemo\\Image3.cmp")) 
 
    ' Prepare the command 
    Dim command As CombineCommand = New CombineCommand 
    ' the source image that will be combined with the desintation image that is sent through Command.Run(). 
    command.SourceImage = leadImage.Clone() 
    ' The rectangle that represents the affected area of the destination image. 
    command.DestinationRectangle = New LeadRect(leadImage.Width \ 8, leadImage.Height \ 8, leadImage.Width, leadImage.Height) 
    command.SourcePoint = New LeadPoint(0, 0) 
    ' The combine will Xor the source and destination image, but set the destination values to 1 before doing the XOR. the effect will be applied on all 3 channels 
    command.Flags = CombineCommandFlags.OperationXor 
    command.Run(leadImage) 
    codecs.Save(leadImage, Path.Combine(LEAD_VARS.ImagesDir, "Result.jpg"), RasterImageFormat.Jpeg, 24) 
 
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.Effects; 
 
       
public void CombineMasterChannelExample() 
{ 
   // Load an image 
   RasterCodecs codecs = new RasterCodecs(); 
   codecs.ThrowExceptionsOnInvalidImages = true; 
   RasterImage image = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, @"ImageProcessingDemo\Image3.cmp")); 
 
   // Prepare the command 
   RasterImage tempImage = image.Clone(); 
   LeadRect rect = new LeadRect(image.Width / 8, image.Height / 8, image.Width, image.Height); 
   CombineCommand command = new CombineCommand(); 
   // the source image that will be combined with the destination image that is sent through Command.Run(). 
   command.SourceImage = tempImage; 
   // the rectangle that represents the affected area of the destination image. 
   command.DestinationRectangle = rect; 
 
   // The combine will Xor the source and destination image, but set the destination values to 1 before doing the XOR. 
   command.Flags = CombineCommandFlags.OperationXor |   CombineCommandFlags.Destination1; 
   command.Run(image); 
   codecs.Save(image, Path.Combine(LEAD_VARS.ImagesDir, "Result.jpg"), RasterImageFormat.Jpeg, 24); 
} 
 
static class LEAD_VARS 
{ 
public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images"; 
} 
using Leadtools; 
using Leadtools.Codecs; 
using Leadtools.ImageProcessing.Effects; 
using Leadtools.ImageProcessing; 
 
       
public async Task CombineMasterChannelExample() 
{ 
   // Load an image 
   RasterCodecs codecs = new RasterCodecs(); 
   codecs.ThrowExceptionsOnInvalidImages = true; 
   // Load the image 
   string srcFileName = @"Assets\Image1.cmp"; 
   StorageFile loadFile = await Tools.AppInstallFolder.GetFileAsync(srcFileName); 
   RasterImage image = await codecs.LoadAsync(LeadStreamFactory.Create(loadFile)); 
 
   // Prepare the command 
   RasterImage tempImage = image.Clone(); 
   LeadRect rect = LeadRectHelper.Create(image.Width / 8, image.Height / 8, image.Width, image.Height); 
   CombineCommand command = new CombineCommand(); 
   // the source image that will be combined with the desintation image that is sent through Command.Run(). 
   command.SourceImage = tempImage; 
   // the rectangle that represents the affected area of the destination image. 
   command.DestinationRectangle = rect; 
 
   // The combine will Xor the source and destination image, but set the destination values to 1 before doing the XOR. 
   command.Flags = CombineCommandFlags.OperationXor |   CombineCommandFlags.Destination1; 
   command.Run(image); 
   //Save as BMP 
   string destFileName = @"result.bmp"; 
   StorageFile saveFile = await Tools.AppLocalFolder.CreateFileAsync(destFileName); 
   await codecs.SaveAsync(image, LeadStreamFactory.Create(saveFile), RasterImageFormat.Bmp, 24); 
} 

Requirements

Target Platforms

Products | Support | Contact Us | Copyright Notices
© 1991-2017 LEAD Technologies, Inc. All Rights Reserved.
Leadtools.ImageProcessing.Effects Assembly
Click or drag to resize