Imports Leadtools
Imports Leadtools.Codecs
Imports Leadtools.ImageProcessing.Core
Imports Leadtools.ImageProcessing.Color
Public WithEvents borderRemoveConstructorCallback As BorderRemoveCommand
Public Sub BorderRemoveConstructorExample()
Dim codecs As New RasterCodecs()
codecs.ThrowExceptionsOnInvalidImages = True
Dim leadImage As RasterImage = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "Clean.tif"))
' Prepare the command
borderRemoveConstructorCallback = New BorderRemoveCommand(BorderRemoveCommandFlags.UseVariance Or BorderRemoveCommandFlags.CallBackRegion, BorderRemoveBorderFlags.All, 20, 9, 3)
borderRemoveConstructorCallback.Run(leadImage)
End Sub
Private Sub BorderRemoveCommand_BorderRemove_S2(ByVal sender As Object, ByVal e As BorderRemoveCommandEventArgs) Handles borderRemoveConstructorCallback.BorderRemove
Dim ee As BorderRemoveCommandEventArgs = New BorderRemoveCommandEventArgs(e.Image, e.Region, BorderRemoveBorderFlags.All, e.BoundingRectangle)
e.Status = RemoveStatus.NoRemove
If Not (e.Region Is Nothing) Then
e.Image.SetRegion(Nothing, e.Region, RasterRegionCombineMode.Set)
Dim command As InvertCommand = New InvertCommand
command.Run(e.Image)
e.Image.MakeRegionEmpty()
End If
End Sub
Public NotInheritable Class LEAD_VARS
Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images"
End Class
using Leadtools;
using Leadtools.Codecs;
using Leadtools.ImageProcessing.Core;
using Leadtools.ImageProcessing.Color;
public void BorderRemoveConstructorExample()
{
// 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( BorderRemoveCommandFlags.UseVariance | BorderRemoveCommandFlags.CallBackRegion, BorderRemoveBorderFlags.All, 20, 9, 3);
command.BorderRemove += new EventHandler<BorderRemoveCommandEventArgs>(command_BorderRemove_S2);
command.Run(image);
}
private void command_BorderRemove_S2(object sender, BorderRemoveCommandEventArgs e)
{
BorderRemoveCommandEventArgs ee = new BorderRemoveCommandEventArgs(e.Image, e.Region, BorderRemoveBorderFlags.All, e.BoundingRectangle);
e.Status = RemoveStatus.NoRemove;
if(e.Region != null)
{
e.Image.SetRegion(null, e.Region, RasterRegionCombineMode.Set);
InvertCommand command = new InvertCommand();
command.Run(e.Image);
e.Image.MakeRegionEmpty();
}
}
static class LEAD_VARS
{
public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images";
}
function BorderRemoveConstructorExample()
{
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 BorderRemoveCommand( BorderRemoveCommandFlags.useVariance | BorderRemoveCommandFlags.callBackRegion, BorderRemoveBorderFlags.all, 20, 9, 3);
command.addEventListener("borderremove", command_BorderRemove_S2);
command.run(image);
}
});
}
function command_BorderRemove_S2(e)
{
with (Leadtools.ImageProcessing.Core) {
e.status = RemoveStatus.noRemove;
if (e.region != null) {
e.image.setRegion(null, e.region, Leadtools.RasterRegionCombineMode.set);
with (Leadtools.ImageProcessing.Color) {
var command = new InvertCommand();
command.run(e.image);
}
e.image.makeRegionEmpty();
}
}
}
using Leadtools;
using Leadtools.Codecs;
using Leadtools.ImageProcessing.Core;
using Leadtools.ImageProcessing.Color;
public async Task BorderRemoveConstructorExample()
{
// 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
BorderRemoveCommand command = new BorderRemoveCommand( BorderRemoveCommandFlags.UseVariance | BorderRemoveCommandFlags.CallBackRegion, BorderRemoveBorderFlags.All, 20, 9, 3);
command.BorderRemove += new EventHandler<BorderRemoveCommandEventArgs>(command_BorderRemove_S2);
command.Run(image);
}
private void command_BorderRemove_S2(object sender, BorderRemoveCommandEventArgs e)
{
BorderRemoveCommandEventArgs ee = new BorderRemoveCommandEventArgs(e.Image, e.Region, BorderRemoveBorderFlags.All, e.BoundingRectangle);
e.Status = RemoveStatus.NoRemove;
if(e.Region != null)
{
e.Image.SetRegion(null, e.Region, RasterRegionCombineMode.Set);
InvertCommand command = new InvertCommand();
command.Run(e.Image);
e.Image.MakeRegionEmpty();
}
}
using Leadtools;
using Leadtools.Examples;
using Leadtools.Codecs;
using Leadtools.ImageProcessing.Core;
public void BorderRemoveConstructorExample(RasterImage image, Stream outStream)
{
// Prepare the command
BorderRemoveCommand command = new BorderRemoveCommand( BorderRemoveCommandFlags.UseVariance | BorderRemoveCommandFlags.CallBackRegion, BorderRemoveBorderFlags.All, 20, 9, 3);
command.BorderRemove += new EventHandler<BorderRemoveCommandEventArgs>(command_BorderRemove_S2);
command.Run(image);
// Save result image
RasterCodecs codecs = new RasterCodecs();
codecs.Save(image, outStream, RasterImageFormat.CcittGroup4, 1);
image.Dispose();
}
private void command_BorderRemove_S2(object sender, BorderRemoveCommandEventArgs e)
{
BorderRemoveCommandEventArgs ee = new BorderRemoveCommandEventArgs(e.Image,null, BorderRemoveBorderFlags.All, e.BoundingRectangle);
e.Status = RemoveStatus.NoRemove;
}
Imports Leadtools
Imports Leadtools.Codecs
Imports Leadtools.ImageProcessing.Core
Public Sub BorderRemoveConstructorExample(ByVal image As RasterImage, ByVal outStream As Stream)
' Prepare the command
Dim command As BorderRemoveCommand = New BorderRemoveCommand(BorderRemoveCommandFlags.UseVariance Or BorderRemoveCommandFlags.CallBackRegion, _
BorderRemoveBorderFlags.All, 20, 9, 3)
AddHandler command.BorderRemove, AddressOf command_BorderRemove_S2
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_S2(ByVal sender As Object, ByVal e As BorderRemoveCommandEventArgs)
Dim ee As BorderRemoveCommandEventArgs = New BorderRemoveCommandEventArgs(e.Image,Nothing, BorderRemoveBorderFlags.All, e.BoundingRectangle)
e.Status = RemoveStatus.NoRemove
End Sub