LEADTOOLS Image Processing (Leadtools.ImageProcessing.Effects assembly)
LEAD Technologies, Inc

CombineCommand Constructor(RasterImage,LeadRect,LeadPoint,CombineCommandFlags)

Example 





RasterImage object that references the source image, which is combined with the destination image.
LeadRect structure that contains the destination rectangle.
LeadPoint structure that contains the origin of the source rectangle. The width and height of the source rectangle are the same as the destination rectangle.
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 plan for the destination, source and resulting images. The flags apply only to the defined rectangles (not necessarily the whole image). You can use a bitwise OR ( | ) to specify one flag from each group.
Initializes a new CombineCommand class object with explicit parameters. .NET support WinRT support Silverlight support
Syntax
'Declaration
 
Public Function New( _
   ByVal sourceImage As RasterImage, _
   ByVal destinationRectangle As LeadRect, _
   ByVal sourcePoint As LeadPoint, _
   ByVal flags As CombineCommandFlags _
)
'Usage
 
Dim sourceImage As RasterImage
Dim destinationRectangle As LeadRect
Dim sourcePoint As LeadPoint
Dim flags As CombineCommandFlags
 
Dim instance As New CombineCommand(sourceImage, destinationRectangle, sourcePoint, flags)
function CombineCommand( 
   sourceImage ,
   destinationRectangle ,
   sourcePoint ,
   flags 
)

Parameters

sourceImage
RasterImage object that references the source image, which is combined with the destination image.
destinationRectangle
LeadRect structure that contains the destination rectangle.
sourcePoint
LeadPoint structure that contains the origin of the source rectangle. The width and height of the source rectangle are the same as the destination rectangle.
flags
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 plan for the destination, source and resulting images. The flags apply only to the defined rectangles (not necessarily the whole image). You can use a bitwise OR ( | ) to specify one flag from each group.
Example
 
Public Sub CombineConstructorExample()
     Dim codecs As New RasterCodecs()
     codecs.ThrowExceptionsOnInvalidImages = True

     Dim leadImage As RasterImage = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "Master.jpg"))

     ' Prepare the command
     Dim tempImage As RasterImage = leadImage.Clone()
     '  the rectangle that represents the affected area of the destination image.
     Dim rect As LeadRect = New LeadRect(CType((leadImage.Width / 8), Integer), CType((leadImage.Height / 8), Integer), leadImage.Width, leadImage.Height)
     ' The source point, which represents the source point of the source image which to being combining.
     Dim srcPoint As LeadPoint = New LeadPoint(0, 0)
     Dim command As CombineCommand = New CombineCommand(tempImage, rect, srcPoint, CombineCommandFlags.OperationAnd Or CombineCommandFlags.Destination1 Or CombineCommandFlags.SourceRed Or CombineCommandFlags.DestinationRed Or CombineCommandFlags.ResultBlue)
     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
public void CombineConstructorExample()
   {
      // Load an image
      RasterCodecs codecs = new RasterCodecs();
      codecs.ThrowExceptionsOnInvalidImages = true;

      RasterImage image = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "Master.jpg"));

      // Prepare the command
      RasterImage tempImage = image.Clone();
      // the rectangle that represents the affected area of the destination image.
      LeadRect rect = new LeadRect(image.Width / 8, image.Height / 8, image.Width, image.Height);
      // The source point, which represents the source point of the source image which to being combining.
      LeadPoint srcPoint = new LeadPoint(0, 0);
      CombineCommand command = new CombineCommand(tempImage, rect, srcPoint,CombineCommandFlags.OperationAnd | CombineCommandFlags.Destination1 | CombineCommandFlags.SourceRed | CombineCommandFlags.DestinationRed | CombineCommandFlags.ResultBlue);
      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";
}
[TestMethod]
public async Task CombineConstructorExample()
{
   // 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();
   // the rectangle that represents the affected area of the destination image.
   LeadRect rect = LeadRectHelper.Create(image.Width / 8, image.Height / 8, image.Width, image.Height);
   // The source point, which represents the source point of the source image which to being combining.
   LeadPoint srcPoint = LeadPointHelper.Create(0, 0);
   CombineCommand command = new CombineCommand(tempImage, rect, srcPoint,CombineCommandFlags.OperationAnd | CombineCommandFlags.Destination1 | CombineCommandFlags.SourceRed | CombineCommandFlags.DestinationRed | CombineCommandFlags.ResultBlue);
   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);

}
public void CombineConstructorExample(RasterImage image, Stream outStream)
{
   // Prepare the command
   RasterImage tempImage = image.Clone();
   LeadRect rect = new LeadRect(image.Width / 8, image.Height / 8, image.Width, image.Height);
   LeadPoint srcPoint = new LeadPoint(0, 0);
   CombineCommand command = new CombineCommand(tempImage, rect, srcPoint, CombineCommandFlags.OperationAnd | CombineCommandFlags.Destination1 | CombineCommandFlags.SourceRed | CombineCommandFlags.DestinationRed | CombineCommandFlags.ResultBlue);
   command.Run(image);
   // Save result image
   RasterCodecs codecs = new RasterCodecs();
   codecs.Save(image, outStream, RasterImageFormat.Jpeg, 24);
   image.Dispose();
}
Public Sub CombineConstructorExample(ByVal image As RasterImage, ByVal outStream As Stream)
   ' Prepare the command
   Dim tempImage As RasterImage = image.Clone()
   Dim rect As LeadRect = New LeadRect(image.Width / 8, image.Height / 8, image.Width, image.Height)
   Dim srcPoint As LeadPoint = New LeadPoint(0, 0)
   Dim command As CombineCommand = New CombineCommand(tempImage, rect, srcPoint, CombineCommandFlags.OperationAnd Or CombineCommandFlags.Destination1 _
                                                      Or CombineCommandFlags.SourceRed Or CombineCommandFlags.DestinationRed Or CombineCommandFlags.ResultBlue)
   command.Run(image)
   ' Save result image
   Dim codecs As RasterCodecs = New RasterCodecs()
   codecs.Save(image, outStream, RasterImageFormat.Jpeg, 24)
   image.Dispose()
End Sub
Requirements

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

See Also

Reference

CombineCommand Class
CombineCommand Members
Overload List

 

 


Products | Support | Contact Us | Copyright Notices

© 2006-2012 All Rights Reserved. LEAD Technologies, Inc.