Removes the black borders in a 1-bit black and white image. This command is available in the Document/Medical Toolkits.
public class BorderRemoveCommand : RasterCommand
Public Class BorderRemoveCommand
Inherits RasterCommand
@interface LTBorderRemoveCommand : LTRasterCommand
public class BorderRemoveCommand extends RasterCommand
public ref class BorderRemoveCommand : public RasterCommand
Run the BorderRemoveCommand on an image.
using Leadtools;
using Leadtools.Codecs;
using Leadtools.ImageProcessing.Core;
using Leadtools.ImageProcessing.Color;
public void BorderRemoveCommandExample()
{
// Load an image
RasterCodecs codecs = new RasterCodecs();
codecs.ThrowExceptionsOnInvalidImages = true;
RasterImage image = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "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);
}
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;
}
static class LEAD_VARS
{
public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images";
}
Imports Leadtools
Imports Leadtools.Codecs
Imports Leadtools.ImageProcessing.Core
Imports Leadtools.ImageProcessing.Color
Public WithEvents borderRemoveCommandCallback As BorderRemoveCommand
Public Sub BorderRemoveCommandExample()
Dim codecs As New RasterCodecs()
codecs.ThrowExceptionsOnInvalidImages = True
Dim leadImage As RasterImage = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "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)
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
Public NotInheritable Class LEAD_VARS
Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images"
End Class
c#[Silverlight C# Example]
using Leadtools;
using Leadtools.Examples;
using Leadtools.Codecs;
using Leadtools.ImageProcessing.Core;
public void BorderRemoveCommandExample(RasterImage image, Stream outStream)
{
// 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);
// Save result image
RasterCodecs codecs = new RasterCodecs();
codecs.Save(image, outStream, RasterImageFormat.CcittGroup4, 1);
image.Dispose();
}
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;
}
Debug.WriteLine("Bounds " + "( " + e.BoundingRectangle.Left + ", " + e.BoundingRectangle.Top + ") - " + "( " + e.BoundingRectangle.Right + ", " + e.BoundingRectangle.Bottom + ")" + "\n Border " + Border.ToString());
e.Status = RemoveStatus.Remove;
}
vb[Silverlight VB Example]
Imports Leadtools
Imports Leadtools.Codecs
Imports Leadtools.ImageProcessing.Core
Public Sub BorderRemoveCommandExample(ByVal image As RasterImage, ByVal outStream As Stream)
' Prepare the command
Dim command As BorderRemoveCommand = New BorderRemoveCommand()
AddHandler command.BorderRemove, AddressOf command_BorderRemove_S1
command.Border = BorderRemoveBorderFlags.All
command.Flags = BorderRemoveCommandFlags.UseVariance
command.Percent = 20
command.Variance = 3
command.WhiteNoiseLength = 9
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 command_BorderRemove_S1(ByVal sender As Object, ByVal e As BorderRemoveCommandEventArgs)
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
Debug.WriteLine("Bounds " & "( " & e.BoundingRectangle.Left & ", " & e.BoundingRectangle.Top & ") - " &
"( " & e.BoundingRectangle.Right & ", " & e.BoundingRectangle.Bottom & ")" & Constants.vbLf & " Border " & Border.ToString())
e.Status = RemoveStatus.Remove
End Sub
Help Collections
Raster .NET | C API | C++ Class Library | HTML5 JavaScript
Document .NET | C API | C++ Class Library | HTML5 JavaScript
Medical .NET | C API | C++ Class Library | HTML5 JavaScript
Medical Web Viewer .NET
Multimedia
Direct Show .NET | C API | Filters
Media Foundation .NET | C API | Transforms
Supported Platforms
.NET, Java, Android, and iOS/macOS Assemblies
Imaging, Medical, and Document
C API/C++ Class Libraries
Imaging, Medical, and Document
HTML5 JavaScript Libraries
Imaging, Medical, and Document
Your email has been sent to support! Someone should be in touch! If your matter is urgent please come back into chat.
Chat Hours:
Monday - Friday, 8:30am to 6pm ET
Thank you for your feedback!
Please fill out the form again to start a new chat.
All agents are currently offline.
Chat Hours:
Monday - Friday
8:30AM - 6PM EST
To contact us please fill out this form and we will contact you via email.