Imports Leadtools
Imports Leadtools.Codecs
Imports Leadtools.ImageProcessing.Core
Public WithEvents dotRemoveCommandCallback_S4 As DotRemoveCommand
Public Sub DotRemoveCommandEventArgsExample()
Dim codecs As New RasterCodecs()
codecs.ThrowExceptionsOnInvalidImages = True
Dim leadImage As RasterImage = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "Clean.tif"))
' Prepare the command
dotRemoveCommandCallback_S4 = New DotRemoveCommand(DotRemoveCommandFlags.UseSize Or DotRemoveCommandFlags.CallBackRegion, 1, 1, 10, 10)
dotRemoveCommandCallback_S4.Run(leadImage)
End Sub
Private Sub DotRemoveCommand_DotRemove_S4(ByVal sender As Object, ByVal e As DotRemoveCommandEventArgs) Handles dotRemoveCommandCallback_S4.DotRemove
Dim ee As DotRemoveCommandEventArgs = New DotRemoveCommandEventArgs(e.Image, e.Region, e.BoundingRectangle, e.WhiteCount, e.BlackCount)
'Do not remove the speck if it contains any white pixels
If (e.WhiteCount > 0) Then
e.Status = RemoveStatus.NoRemove
Else
e.Status = RemoveStatus.Remove
End If
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
using Leadtools;
using Leadtools.Codecs;
using Leadtools.ImageProcessing.Core;
public void DotRemoveCommandEventArgsExample()
{
// Load an image
RasterCodecs codecs = new RasterCodecs();
codecs.ThrowExceptionsOnInvalidImages = true;
RasterImage image = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "Clean.tif"));
// Prepare the command
DotRemoveCommand command = new DotRemoveCommand(DotRemoveCommandFlags.UseSize | DotRemoveCommandFlags.CallBackRegion, 1, 1, 10, 10);
command.DotRemove += new EventHandler<DotRemoveCommandEventArgs>(DotRemoveEvent_S4);
command.Run(image);
}
private void DotRemoveEvent_S4(object sender, DotRemoveCommandEventArgs e)
{
DotRemoveCommandEventArgs ee = new DotRemoveCommandEventArgs(e.Image, e.Region, e.BoundingRectangle, e.WhiteCount, e.BlackCount);
// Do not remove the speck if it contains any white pixels
if (e.WhiteCount > 0)
{
e.Status= RemoveStatus.NoRemove;
}
else
{
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 DotRemoveCommandEventArgsExample() {
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 DotRemoveCommand(DotRemoveCommandFlags.useSize | DotRemoveCommandFlags.callBackRegion, 1, 1, 10, 10);
command.addEventListener("dotremove", DotRemoveEvent_S4);
command.run(image);
}
});
}
function DotRemoveEvent_S4(e) {
with (Leadtools.ImageProcessing.Core) {
var ee = new DotRemoveCommandEventArgs(e.image, e.region, e.boundingRectangle, e.whiteCount, e.blackCount);
// Do not remove the speck if it contains any white pixels
if (e.whiteCount > 0) {
e.status = RemoveStatus.noRemove;
}
else {
e.status = RemoveStatus.remove;
}
if (e.region != null) {
e.image.setRegion(null, e.region, Leadtools.RasterRegionCombineMode.andNotRegion);
}
}
}
using Leadtools;
using Leadtools.Codecs;
using Leadtools.ImageProcessing.Core;
public async Task DotRemoveCommandEventArgsExample()
{
// 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
DotRemoveCommand command = new DotRemoveCommand(DotRemoveCommandFlags.UseSize | DotRemoveCommandFlags.CallBackRegion, 1, 1, 10, 10);
command.DotRemove += new EventHandler<DotRemoveCommandEventArgs>(DotRemoveEvent_S4);
command.Run(image);
}
private void DotRemoveEvent_S4(object sender, DotRemoveCommandEventArgs e)
{
DotRemoveCommandEventArgs ee = new DotRemoveCommandEventArgs(e.Image, e.Region, e.BoundingRectangle, e.WhiteCount, e.BlackCount);
// Do not remove the speck if it contains any white pixels
if (e.WhiteCount > 0)
{
e.Status= RemoveStatus.NoRemove;
}
else
{
e.Status= RemoveStatus.Remove;
}
if(e.Region != null)
{
e.Image.SetRegion(null, e.Region, RasterRegionCombineMode.AndNotRegion);
}
}
using Leadtools;
using Leadtools.Examples;
using Leadtools.Codecs;
using Leadtools.ImageProcessing.Core;
public void DotRemoveCommandEventArgsExample(RasterImage image, Stream outStream)
{
// Prepare the command
DotRemoveCommand command = new DotRemoveCommand(DotRemoveCommandFlags.UseSize | DotRemoveCommandFlags.CallBackRegion, 1, 1, 10, 10);
command.DotRemove += new EventHandler<DotRemoveCommandEventArgs>(DotRemoveEvent_S4);
command.Run(image);
// Save result image
RasterCodecs codecs = new RasterCodecs();
codecs.Save(image, outStream, RasterImageFormat.CcittGroup4, 1);
image.Dispose();
}
private void DotRemoveEvent_S4(object sender, DotRemoveCommandEventArgs e)
{
DotRemoveCommandEventArgs ee = new DotRemoveCommandEventArgs(e.Image,null, e.BoundingRectangle, e.WhiteCount, e.BlackCount);
// Do not remove the speck if it contains any white pixels
if (e.WhiteCount > 0)
{
e.Status= RemoveStatus.NoRemove;
}
else
{
e.Status= RemoveStatus.Remove;
}
}
Imports Leadtools
Imports Leadtools.Codecs
Imports Leadtools.ImageProcessing.Core
Public Sub DotRemoveCommandEventArgsExample(ByVal image As RasterImage, ByVal outStream As Stream)
' Prepare the command
Dim command As DotRemoveCommand = New DotRemoveCommand(DotRemoveCommandFlags.UseSize Or DotRemoveCommandFlags.CallBackRegion, 1, 1, 10, 10)
AddHandler command.DotRemove, AddressOf DotRemoveEvent_S4
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 DotRemoveEvent_S4(ByVal sender As Object, ByVal e As DotRemoveCommandEventArgs)
Dim ee As DotRemoveCommandEventArgs = New DotRemoveCommandEventArgs(e.Image,Nothing, e.BoundingRectangle, e.WhiteCount, e.BlackCount)
' Do not remove the speck if it contains any white pixels
If e.WhiteCount > 0 Then
e.Status= RemoveStatus.NoRemove
Else
e.Status= RemoveStatus.Remove
End If
End Sub