←Select platform

HolePunchRemoveCommandEventArgs Constructor

Summary
Initializes a new HolePunchRemoveCommand class object with explicit parameters.
Syntax
C#
VB
C++
Public Function New( _ 
   ByVal image As RasterImage, _ 
   ByVal region As RasterRegion, _ 
   ByVal boundingRectangle As LeadRect, _ 
   ByVal holeIndex As Integer, _ 
   ByVal holeTotalCount As Integer, _ 
   ByVal whiteCount As Integer, _ 
   ByVal blackCount As Integer _ 
) 
public: 
HolePunchRemoveCommandEventArgs(  
   RasterImage^ image, 
   RasterRegion^ region, 
   LeadRect boundingRectangle, 
   int holeIndex, 
   int holeTotalCount, 
   int whiteCount, 
   int blackCount 
) 

Parameters

image
RasterImage object that contains the affected image

region
LEADTOOLS RasterRegion representing one of the holes of the hole punch pattern. It is the programmer's responsibility to dispose of this region when it is no longer needed.

boundingRectangle
The bounding rectangle of one of the holes in a hole punch pattern.

holeIndex
Index of the hole within a hole punch pattern. The holes are numbered from 1 to n, where n is the total number of holes in the hole punch pattern.

holeTotalCount
The total number of holes that make up the hole punch pattern. This value will not change for a particular call to HolePunchRemoveCommand.

whiteCount
Total number of white pixels in one of the holes of a hole punch pattern.

blackCount
Total number of black pixels in one of the holes of a hole punch pattern.

Example

Run the HolePunchRemoveCommand on an image.

C#
VB
using Leadtools; 
using Leadtools.Codecs; 
using Leadtools.ImageProcessing.Core; 
 
public void HolePunchRemoveCommandEventArgsExample() 
{ 
   // Load an image 
   RasterCodecs codecs = new RasterCodecs(); 
   codecs.ThrowExceptionsOnInvalidImages = true; 
 
   RasterImage image = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "Clean.tif")); 
 
   // Prepare the command 
   HolePunchRemoveCommand command = new HolePunchRemoveCommand(HolePunchRemoveCommandFlags.CallBackRegion | HolePunchRemoveCommandFlags.UseDpi | HolePunchRemoveCommandFlags.UseCount | HolePunchRemoveCommandFlags.UseLocation | 
         HolePunchRemoveCommandFlags.SingleRegion, HolePunchRemoveCommandLocation.Left, 2, 4, 0, 0, image.Width, image.Height); 
   command.HolePunchRemove += new EventHandler<HolePunchRemoveCommandEventArgs>(HolePunchRemoveEvent_S4); 
   command.Run(image); 
 
} 
 
private void HolePunchRemoveEvent_S4(object sender, HolePunchRemoveCommandEventArgs e) 
{ 
   HolePunchRemoveCommandEventArgs ee = new HolePunchRemoveCommandEventArgs(e.Image, e.Region, e.BoundingRectangle, e.HoleIndex, e.HoleTotalCount, e.WhiteCount, e.BlackCount); 
   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:\LEADTOOLS21\Resources\Images"; 
} 
Imports Leadtools 
Imports Leadtools.Codecs 
Imports Leadtools.ImageProcessing.Core 
 
Public WithEvents holePunchCommand_S4 As HolePunchRemoveCommand 
Public Sub HolePunchRemoveCommandEventArgsExample() 
   Dim codecs As New RasterCodecs() 
   codecs.ThrowExceptionsOnInvalidImages = True 
 
   Dim leadImage As RasterImage = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "Clean.tif")) 
 
   ' Prepare the command 
   holePunchCommand_S4 = New HolePunchRemoveCommand(HolePunchRemoveCommandFlags.CallBackRegion Or HolePunchRemoveCommandFlags.UseDpi Or 
                                                    HolePunchRemoveCommandFlags.UseSize Or HolePunchRemoveCommandFlags.UseLocation Or 
                                                    HolePunchRemoveCommandFlags.SingleRegion, HolePunchRemoveCommandLocation.Left, 
                                                    0, 0, 0, 0, leadImage.Width, leadImage.Height) 
   holePunchCommand_S4.Run(leadImage) 
 
End Sub 
 
Private Sub HolePunchCommand_HolePunchRemove_S4(ByVal sender As Object, ByVal e As HolePunchRemoveCommandEventArgs) Handles holePunchCommand_S4.HolePunchRemove 
   Dim ee As HolePunchRemoveCommandEventArgs = New HolePunchRemoveCommandEventArgs(e.Image, e.Region, e.BoundingRectangle, e.HoleIndex, 
                                                                                   e.HoleTotalCount, e.WhiteCount, e.BlackCount) 
   e.Status = RemoveStatus.Remove 
 
   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:\LEADTOOLS21\Resources\Images" 
End Class 
Requirements

Target Platforms

Help Version 21.0.2021.7.2
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2021 LEAD Technologies, Inc. All Rights Reserved.

Leadtools.ImageProcessing.Core Assembly
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2021 LEAD Technologies, Inc. All Rights Reserved.