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

HolePunchRemoveCommandEventArgs Constructor (HolePunchRemoveCommandEventArgs)

Example 





RasterImage object that contains the affected image
LEADTOOLS 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.
The bounding rectangle of one of the holes in a hole punch pattern.
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.
The total number of holes that make up the hole punch pattern. This value will not change for a particular call to HolePunchRemoveCommand.
Total number of white pixels in one of the holes of a hole punch pattern.
Total number of black pixels in one of the holes of a hole punch pattern.
Initializes a new HolePunchRemoveCommand class object with explicit parameters. .NET support WinRT support
Syntax
public HolePunchRemoveCommandEventArgs( 
   RasterImage image,
   RasterRegion region,
   LeadRect boundingRectangle,
   int holeIndex,
   int holeTotalCount,
   int whiteCount,
   int blackCount
)
'Declaration
 
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 _
)
'Usage
 
Dim image As RasterImage
Dim region As RasterRegion
Dim boundingRectangle As LeadRect
Dim holeIndex As Integer
Dim holeTotalCount As Integer
Dim whiteCount As Integer
Dim blackCount As Integer
 
Dim instance As New HolePunchRemoveCommandEventArgs(image, region, boundingRectangle, holeIndex, holeTotalCount, whiteCount, blackCount)
public HolePunchRemoveCommandEventArgs( 
   RasterImage image,
   RasterRegion region,
   LeadRect boundingRectangle,
   int holeIndex,
   int holeTotalCount,
   int whiteCount,
   int blackCount
)
function HolePunchRemoveCommandEventArgs( 
   image ,
   region ,
   boundingRectangle ,
   holeIndex ,
   holeTotalCount ,
   whiteCount ,
   blackCount 
)
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 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
 
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:\Users\Public\Documents\LEADTOOLS Images"
End Class
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:\Users\Public\Documents\LEADTOOLS Images";
}
function HolePunchRemoveCommandEventArgsExample()
{
   var codecs = new Leadtools.Codecs.RasterCodecs();
   codecs.throwExceptionsOnInvalidImages = true;

   // Load the image
   var srcFileName = "Assets\\clean.tif";
   return Tools.AppInstallFolder().getFileAsync(srcFileName).then(function (loadFile) {
      return codecs.loadAsync(Leadtools.LeadStreamFactory.create(loadFile));
   }).then(function (image) {
      // Prepare the command
      with (Leadtools.ImageProcessing.Core) {
         var command = new HolePunchRemoveCommand(HolePunchRemoveCommandFlags.callBackRegion | HolePunchRemoveCommandFlags.useDpi | HolePunchRemoveCommandFlags.useCount | HolePunchRemoveCommandFlags.useLocation | HolePunchRemoveCommandFlags.singleRegion, HolePunchRemoveCommandLocation.left, 2, 4, 0, 0, image.width, image.height);
         command.addEventListener("holepunchremove", HolePunchRemoveEvent_S4);
         command.run(image);
      }
   });
}

function HolePunchRemoveEvent_S4(e)
{
   with (Leadtools.ImageProcessing.Core) {
      var 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, Leadtools.RasterRegionCombineMode.andNotRegion);
      }
   }
}
[TestMethod]
public async Task HolePunchRemoveCommandEventArgsExample()
{
   // Load an image
   RasterCodecs codecs = new RasterCodecs();
   codecs.ThrowExceptionsOnInvalidImages = true;
   // Load the image
   string srcFileName = @"Assets\Clean.tif";
   StorageFile loadFile = await Tools.AppInstallFolder.GetFileAsync(srcFileName);
   RasterImage image = await codecs.LoadAsync(LeadStreamFactory.Create(loadFile));

   // 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);
   }
}
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

HolePunchRemoveCommandEventArgs Class
HolePunchRemoveCommandEventArgs Members

 

 


Products | Support | Contact Us | Copyright Notices

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