Leadtools.ImageProcessing.Core Send comments on this topic. | Back to Introduction - All Topics | Help Version 16.5.9.25
BorderRemoveCommand Class
See Also  Members   Example 
Leadtools.ImageProcessing.Core Namespace : BorderRemoveCommand Class



Removes the black borders in a 1-bit black and white image. This command is available in the Document/Medical Toolkits.

Syntax

Visual Basic (Declaration) 
Public Class BorderRemoveCommand 
   Inherits RasterCommand
   Implements IRasterCommand 
Visual Basic (Usage)Copy Code
Dim instance As BorderRemoveCommand
C# 
public class BorderRemoveCommand : RasterCommand, IRasterCommand  
C++/CLI 
public ref class BorderRemoveCommand : public RasterCommand, IRasterCommand  

Example

Run the BorderRemoveCommand on an image.

Visual BasicCopy Code
Public WithEvents borderRemoveCommandCallback As BorderRemoveCommand
Public Sub BorderRemoveCommandExample()
   RasterCodecs.Startup()
   Dim codecs As New RasterCodecs()
   codecs.ThrowExceptionsOnInvalidImages = True

   Dim leadImage As RasterImage = codecs.Load(LeadtoolsExamples.Common.ImagesPath.Path + "Clean.tif")

   ' Prepare the command
   borderRemoveCommandCallback = New BorderRemoveCommand
   borderRemoveCommandCallback.Border = BorderRemoveBorderFlags.All
   borderRemoveCommandCallback.Flags = BorderRemoveCommandFlags.UseVariance
   borderRemoveCommandCallback.Percent = 20
   borderRemoveCommandCallback.Variance = 3
   borderRemoveCommandCallback.WhiteNoiseLength = 9

   borderRemoveCommandCallback.Run(leadImage)

   RasterCodecs.Shutdown()
End Sub

Private Sub BorderRemoveCommand_BorderRemove_S1(ByVal sender As Object, ByVal e As BorderRemoveCommandEventArgs) Handles borderRemoveCommandCallback.BorderRemove
   Dim Border As String

   Select Case (e.Border)
      Case BorderRemoveBorderFlags.Top
         Border = "Top"

      Case BorderRemoveBorderFlags.Left
         Border = "Left"

      Case BorderRemoveBorderFlags.Right
         Border = "Right"

      Case BorderRemoveBorderFlags.Bottom
         Border = "Bottom"

      Case Else
         Border = ""
   End Select
   MessageBox.Show("Bounds ( " + Convert.ToString(e.BoundingRectangle.Left) + ", " + Convert.ToString(e.BoundingRectangle.Top) + ") - " + "( " + Convert.ToString(e.BoundingRectangle.Right) + ", " + Convert.ToString(e.BoundingRectangle.Bottom) + ")" + Chr(13) + " Border " + Border.ToString())
   e.Status = RemoveStatus.Remove
End Sub
C#Copy Code
public void BorderRemoveCommandExample() 

   // Load an image 
   RasterCodecs.Startup(); 
   RasterCodecs codecs = new RasterCodecs(); 
   codecs.ThrowExceptionsOnInvalidImages = true; 
 
   RasterImage image = codecs.Load(LeadtoolsExamples.Common.ImagesPath.Path + "Clean.tif"); 
 
   // Prepare the command 
   BorderRemoveCommand command = new BorderRemoveCommand(); 
   command.BorderRemove += new EventHandler<BorderRemoveCommandEventArgs>(command_BorderRemove_S1); 
   command.Border = BorderRemoveBorderFlags.All; 
   command.Flags = BorderRemoveCommandFlags.UseVariance; 
   command.Percent = 20; 
   command.Variance = 3; 
   command.WhiteNoiseLength = 9; 
 
   command.Run(image); 
 
   RasterCodecs.Shutdown(); 

 
private void command_BorderRemove_S1(object sender, BorderRemoveCommandEventArgs e) 

   string Border; 
 
   switch (e.Border) 
   { 
      case BorderRemoveBorderFlags.Top: 
         Border = "Top"; 
         break; 
      case BorderRemoveBorderFlags.Left: 
         Border = "Left"; 
         break; 
      case BorderRemoveBorderFlags.Right: 
         Border = "Right"; 
         break; 
      case BorderRemoveBorderFlags.Bottom: 
         Border = "Bottom"; 
         break; 
      default: 
         Border = ""; 
         break; 
   } 
   MessageBox.Show("Bounds " + "( " + e.BoundingRectangle.Left + ", " + e.BoundingRectangle.Top + ") - " + "( " + e.BoundingRectangle.Right + ", " + e.BoundingRectangle.Bottom + ")" + "\n Border " + Border.ToString()); 
   e.Status = RemoveStatus.Remove; 
}

Remarks

  • This command removes borders that commonly appear in scanned text documents. Any or all of the four borders can be detected and removed. The behavior of this command can be modified by using an Event Handler that handles the BorderRemoveCommandEventArgs.
  • This command works only on 1-bit black and white images.
  • If a region is selected, only the selected region will be changed by this command. If no region is selected, the whole image will be processed.
  • This command does not support signed data images.
  • This command does not support 32-bit grayscale images.

Inheritance Hierarchy

System.Object
   Leadtools.ImageProcessing.RasterCommand
      Leadtools.ImageProcessing.Core.BorderRemoveCommand

Requirements

Target Platforms: Microsoft .NET Framework 2.0, Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 family

See Also