public DotRemoveCommandEventArgs(
RasterImage image,
RasterRegion region,
LeadRect boundingRectangle,
int whiteCount,
int blackCount
)
public DotRemoveCommandEvent(
Object source,
RasterImage image,
RasterRegion region,
LeadRect boundingRectangle,
int whiteCount,
int blackCount
)
public:
DotRemoveCommandEventArgs(
RasterImage^ image,
RasterRegion^ region,
LeadRect boundingRectangle,
int whiteCount,
int blackCount
)
__init__(self,image,region,boundingRectangle,whiteCount,blackCount) # Overloaded constructor
image
RasterImage object that references the image to be modified.
region
LEADTOOLS RasterRegion representing the dot to be removed. It is the programmer's responsibility to dispose of this region when it is no longer needed.
boundingRectangle
The bounding rectangle of the dot being processed.
whiteCount
Total number of white pixels in the dot being processed.
blackCount
Total number of black pixels in the dot being processed.
Run the DotRemoveCommand on an image.
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:\LEADTOOLS23\Resources\Images";
}
import java.io.File;
import java.io.IOException;
import org.junit.*;
import org.junit.runner.JUnitCore;
import org.junit.runner.Result;
import org.junit.runner.notification.Failure;
import static org.junit.Assert.*;
import leadtools.*;
import leadtools.codecs.*;
import leadtools.imageprocessing.core.*;
public void dotRemoveCommandEventArgsExample() {
final String LEAD_VARS_IMAGES_DIR = "C:\\LEADTOOLS23\\Resources\\Images";
// Load an image
RasterCodecs codecs = new RasterCodecs();
codecs.setThrowExceptionsOnInvalidImages(true);
RasterImage image = codecs.load(combine(LEAD_VARS_IMAGES_DIR, "Clean.tif"));
String outputFileName = combine(LEAD_VARS_IMAGES_DIR, "LEAD_dotRemoveExample.jpg");
// Prepare the command
DotRemoveCommand command = new DotRemoveCommand(
DotRemoveCommandFlags.USE_SIZE.getValue() | DotRemoveCommandFlags.CALLBACK_REGION.getValue(), 1, 1, 10, 10);
assertTrue(command.getMaximumDotHeight() == 10 && command.getMaximumDotWidth() == 10
&& command.getMinimumDotHeight() == 1 && command.getMinimumDotWidth() == 1);
command.addDotRemoveCommandListener(dotRemoveEvent_S4);
command.run(image);
System.out.println("Executed changes on loaded image...");
codecs.save(image, outputFileName, RasterImageFormat.JPEG, 8);
System.out.println("Saved updated file to:\n" + outputFileName);
assertTrue(new File(outputFileName).exists());
}
DotRemoveCommandListener dotRemoveEvent_S4 = new DotRemoveCommandListener() {
@Override
public void onDotRemoveEvent(DotRemoveCommandEvent e) {
DotRemoveCommandEvent removeCommand = new DotRemoveCommandEvent(e, e.getImage(), e.getRegion(),
e.getBoundingRectangle(),
e.getWhiteCount(), e.getBlackCount());
// Do not remove the speck if it contains any white pixels
if (e.getWhiteCount() > 0) {
e.setStatus(RemoveStatus.NO_REMOVE);
} else {
e.setStatus(RemoveStatus.REMOVE);
}
if (e.getRegion() != null) {
e.getImage().setRegion(null, e.getRegion(), RasterRegionCombineMode.AND_NOT_REGION);
}
}
};
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