LEADTOOLS Image Processing (Leadtools.ImageProcessing.Core assembly) Send comments on this topic. | Back to Introduction - All Topics | Help Version 17.0.3.29
DotRemoveCommandEventArgs Constructor
See Also  Example
Leadtools.ImageProcessing.Core Namespace > DotRemoveCommandEventArgs Class : DotRemoveCommandEventArgs Constructor



image
RasterImage object that references the image to be modified.
region
LEADTOOLS Leadtools.RasterRegion representing the dot to be removed. It is the programmer's responsibility to dispose of this region when it is no longer needed.
boundingRectangle
The bounding rectangle of the dot being processed.
whiteCount
Total number of white pixels in the dot being processed.
blackCount
Total number of black pixels in the dot being processed.
Initializes a new DotRemoveCommand with explicit parameters. Supported in Silverlight, Windows Phone 7

Syntax

Visual Basic (Declaration) 
Public Function New( _
   ByVal image As RasterImage, _
   ByVal region As RasterRegion, _
   ByVal boundingRectangle As LeadRect, _
   ByVal whiteCount As Integer, _
   ByVal blackCount As Integer _
)
Visual Basic (Usage)Copy Code
Dim image As RasterImage
Dim region As RasterRegion
Dim boundingRectangle As LeadRect
Dim whiteCount As Integer
Dim blackCount As Integer
 
Dim instance As New DotRemoveCommandEventArgs(image, region, boundingRectangle, whiteCount, blackCount)
C# 
public DotRemoveCommandEventArgs( 
   RasterImage image,
   RasterRegion region,
   LeadRect boundingRectangle,
   int whiteCount,
   int blackCount
)
C++/CLI 
public:
DotRemoveCommandEventArgs( 
   RasterImage^ image,
   RasterRegion^ region,
   LeadRect boundingRectangle,
   int whiteCount,
   int blackCount
)

Parameters

image
RasterImage object that references the image to be modified.
region
LEADTOOLS Leadtools.RasterRegion representing the dot to be removed. It is the programmer's responsibility to dispose of this region when it is no longer needed.
boundingRectangle
The bounding rectangle of the dot being processed.
whiteCount
Total number of white pixels in the dot being processed.
blackCount
Total number of black pixels in the dot being processed.

Example

Run the DotRemoveCommand on an image.

Visual BasicCopy Code
Public WithEvents dotRemoveCommandCallback_S4 As DotRemoveCommand
Public Sub DotRemoveCommandEventArgsExample()
   Dim codecs As New RasterCodecs()
   codecs.ThrowExceptionsOnInvalidImages = True

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

   ' Prepare the command
   dotRemoveCommandCallback_S4 = New DotRemoveCommand(DotRemoveCommandFlags.UseSize Or DotRemoveCommandFlags.CallBackRegion, 1, 1, 10, 10)
   dotRemoveCommandCallback_S4.Run(leadImage)

End Sub

Private Sub DotRemoveCommand_DotRemove_S4(ByVal sender As Object, ByVal e As DotRemoveCommandEventArgs) Handles dotRemoveCommandCallback_S4.DotRemove
   Dim ee As DotRemoveCommandEventArgs = New DotRemoveCommandEventArgs(e.Image, e.Region, e.BoundingRectangle, e.WhiteCount, e.BlackCount)
   'Do not remove the speck if it contains any white pixels
   If (e.WhiteCount > 0) Then
      e.Status = RemoveStatus.NoRemove
   Else
      e.Status = RemoveStatus.Remove
   End If

   If Not (e.Region Is Nothing) Then
      e.Image.SetRegion(Nothing, e.Region, RasterRegionCombineMode.AndNotRegion)
   End If
End Sub

Public NotInheritable Class LEAD_VARS
   Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images"
End Class
C#Copy Code
public void DotRemoveCommandEventArgsExample()
   {
      // Load an image
      RasterCodecs codecs = new RasterCodecs();
      codecs.ThrowExceptionsOnInvalidImages = true;

      RasterImage image = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "Clean.tif"));

      // Prepare the command
      DotRemoveCommand command = new DotRemoveCommand(DotRemoveCommandFlags.UseSize | DotRemoveCommandFlags.CallBackRegion, 1, 1, 10, 10);
      command.DotRemove += new EventHandler<DotRemoveCommandEventArgs>(DotRemoveEvent_S4);
      command.Run(image);

   }

   private void DotRemoveEvent_S4(object sender, DotRemoveCommandEventArgs e)
   {
      DotRemoveCommandEventArgs ee = new DotRemoveCommandEventArgs(e.Image, e.Region, e.BoundingRectangle, e.WhiteCount, e.BlackCount);
      // Do not remove the speck if it contains any white pixels
      if (e.WhiteCount > 0) 
      {
         e.Status= RemoveStatus.NoRemove;
      }
      else 
      {
         e.Status= RemoveStatus.Remove;
      }

      if(e.Region != null)
      {
         e.Image.SetRegion(null, e.Region, RasterRegionCombineMode.AndNotRegion);
      }
   }

static class LEAD_VARS
{
   public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images";
}
SilverlightCSharpCopy Code
public void DotRemoveCommandEventArgsExample(RasterImage image, Stream outStream)
{
   // Prepare the command
   DotRemoveCommand command = new DotRemoveCommand(DotRemoveCommandFlags.UseSize | DotRemoveCommandFlags.CallBackRegion, 1, 1, 10, 10);
   command.DotRemove += new EventHandler<DotRemoveCommandEventArgs>(DotRemoveEvent_S4);
   command.Run(image);
   // Save result image
   RasterCodecs codecs = new RasterCodecs();
   codecs.Save(image, outStream, RasterImageFormat.CcittGroup4, 1);
   image.Dispose();
}

private void DotRemoveEvent_S4(object sender, DotRemoveCommandEventArgs e)
{
   DotRemoveCommandEventArgs ee = new DotRemoveCommandEventArgs(e.Image,null, e.BoundingRectangle, e.WhiteCount, e.BlackCount);
   // Do not remove the speck if it contains any white pixels
   if (e.WhiteCount > 0) 
   {
      e.Status= RemoveStatus.NoRemove;
   }
   else 
   {
      e.Status= RemoveStatus.Remove;
   }
}
SilverlightVBCopy Code
Public Sub DotRemoveCommandEventArgsExample(ByVal image As RasterImage, ByVal outStream As Stream)
   ' Prepare the command
   Dim command As DotRemoveCommand = New DotRemoveCommand(DotRemoveCommandFlags.UseSize Or DotRemoveCommandFlags.CallBackRegion, 1, 1, 10, 10)
   AddHandler command.DotRemove, AddressOf DotRemoveEvent_S4
   command.Run(image)
   ' Save result image
   Dim codecs As RasterCodecs = New RasterCodecs()
   codecs.Save(image, outStream, RasterImageFormat.CcittGroup4, 1)
   image.Dispose()
End Sub

Private Sub DotRemoveEvent_S4(ByVal sender As Object, ByVal e As DotRemoveCommandEventArgs)
   Dim ee As DotRemoveCommandEventArgs = New DotRemoveCommandEventArgs(e.Image,Nothing, e.BoundingRectangle, e.WhiteCount, e.BlackCount)
   ' Do not remove the speck if it contains any white pixels
   If e.WhiteCount > 0 Then
      e.Status= RemoveStatus.NoRemove
   Else
      e.Status= RemoveStatus.Remove
   End If
End Sub

Requirements

Target Platforms: Silverlight 3.0, Windows XP, Windows Server 2003 family, Windows Server 2008 family, Windows Vista, Windows 7, MAC OS/X (Intel Only)

See Also