public int MinimumHoleCount { get; set; }
public int getMinimumHoleCount();
public void setMinimumHoleCount(
int intValue
);
MinimumHoleCount # get and set (HolePunchRemoveCommand)
Minimum number of holes to detect. This property is valid only if the HolePunchRemoveCommandFlags.UseCount flag is set in the Flags property. This value must be at least 2.
using Leadtools;
using Leadtools.Codecs;
using Leadtools.ImageProcessing.Core;
public void HolePunchRemoveCommandExample()
{
// Load an image
RasterCodecs codecs = new RasterCodecs();
codecs.ThrowExceptionsOnInvalidImages = true;
RasterImage image = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "Clean.tif"));
// Prepare the command
HolePunchRemoveCommand command = new HolePunchRemoveCommand();
command.HolePunchRemove += new EventHandler<HolePunchRemoveCommandEventArgs>(HolePunchRemoveEvent_S1);
command.Flags = HolePunchRemoveCommandFlags.UseDpi | HolePunchRemoveCommandFlags.UseCount | HolePunchRemoveCommandFlags.UseLocation;
command.Location = HolePunchRemoveCommandLocation.Left;
command.MaximumHoleCount = 4;
command.MinimumHoleCount = 2;
command.Run(image);
}
private void HolePunchRemoveEvent_S1(object sender, HolePunchRemoveCommandEventArgs e)
{
MessageBox.Show("Size " + "( " + e.BoundingRectangle.Left + ", " + e.BoundingRectangle.Top + ") - " + "( " + e.BoundingRectangle.Right + ", " + e.BoundingRectangle.Bottom + ")" +
"\n Hole Index " + e.HoleIndex.ToString() +
"\n Holes Total Count " + e.HoleTotalCount.ToString() +
"\n Black Count " + e.BlackCount.ToString() +
"\n White Count " + e.WhiteCount.ToString());
e.Status = RemoveStatus.Remove;
}
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 holePunchRemoveCommandExample() {
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"), 1, CodecsLoadByteOrder.BGR, 1, 1);
// Prepare the command
HolePunchRemoveCommand command = new HolePunchRemoveCommand();
command.addHolePunchRemoveCommandListener(holePunchRemoveEvent_S1);
command.setFlags(HolePunchRemoveCommandFlags.USE_DPI.getValue() | HolePunchRemoveCommandFlags.USE_COUNT.getValue()
| HolePunchRemoveCommandFlags.USE_LOCATION.getValue());
assertTrue(command.getFlags() >= 0);
command.setLocation(HolePunchRemoveCommandLocation.LEFT);
command.setMaximumHoleCount(4);
command.setMinimumHoleCount(2);
assertTrue(command.getLocation() == HolePunchRemoveCommandLocation.LEFT && command.getMaximumHoleCount() == 4
&& command.getMinimumHoleCount() == 2);
command.run(image);
codecs.save(image, combine(LEAD_VARS_IMAGES_DIR, "Result.jpg"), RasterImageFormat.JPEG, 24);
assertTrue(new File(combine(LEAD_VARS_IMAGES_DIR, "Result.jpg")).exists());
System.out.println("Command run and image exported to: " + combine(LEAD_VARS_IMAGES_DIR, "Result.jpg"));
}
HolePunchRemoveCommandListener holePunchRemoveEvent_S1 = new HolePunchRemoveCommandListener() {
@Override
public void onHolePunchRemoveEvent(HolePunchRemoveCommandEvent e) {
System.out
.println("Size " + "( " + e.getBoundingRectangle().getLeft() + ", " + e.getBoundingRectangle().getTop()
+ ") - " + "( " + e.getBoundingRectangle().getRight() + ", " + e.getBoundingRectangle().getBottom()
+ ")" + "\n Hole Index " + e.getHoleIndex() + "\n Holes Total Count " + e.getHoleTotalCount()
+ "\n Black Count " + e.getBlackCount() + "\n White Count " + e.getWhiteCount());
e.setStatus(RemoveStatus.REMOVE);
}
};
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