public class SliceCommand : RasterCommand
Public Class SliceCommand
Inherits RasterCommand
public ref class SliceCommand : public RasterCommand
.This command is designed to extract the individual slices from radiographic scanned film. The image below shows an example of these radiographic images before and after applying the SliceCommand where we use the output data to draw a white line around each separate slice.
This method supports 12 and 16-bit grayscale and 48 and 64-bit color images. Support for 12 and 16-bit grayscale and 48 and 64-bit color images is available only in the Document/Medical toolkits.
This event will draw a new region around the newly found slice.
using Leadtools;
using Leadtools.Codecs;
using Leadtools.ImageProcessing.Core;
public void SliceCommandExample()
{
// Load an image
RasterCodecs codecs = new RasterCodecs();
codecs.ThrowExceptionsOnInvalidImages = true;
RasterImage image = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "Master.jpg"));
// Prepare the command
SliceCommand cmd = new SliceCommand();
cmd.FillColor = new RasterColor(0, 0, 0);
cmd.MaximumDeskewAngle = 40;
cmd.Flags = SliceCommandFlags.Bicubic | SliceCommandFlags.WithoutCut | SliceCommandFlags.DeskewImage;
cmd.Slice += new EventHandler<SliceCommandEventArgs>(SliceEventExample_S1);
// Apply the slice command on the image.
cmd.Run(image);
// Print out the deskew amount.
Console.WriteLine("Deskew Angle = {0}", cmd.DeskewAngle);
}
private void SliceEventExample_S1(object sender, SliceCommandEventArgs e)
{
// create a region around the slice
if (e.Image.HasRegion)
e.Image.AddRectangleToRegion(null, e.SliceRectangle, Leadtools.RasterRegionCombineMode.Xor);
else
e.Image.AddRectangleToRegion(null, e.SliceRectangle, Leadtools.RasterRegionCombineMode.Set);
// print out the deskew angle
Console.WriteLine("The rotation Amount is {0}", e.DeskewAngle);
}
static class LEAD_VARS
{
public const string ImagesDir = @"C:\LEADTOOLS21\Resources\Images";
}
Imports Leadtools
Imports Leadtools.Codecs
Imports Leadtools.ImageProcessing.Core
Public WithEvents sliceEventExample_S1 As SliceCommand
Public Sub SliceCommandExample()
Dim codecs As New RasterCodecs()
codecs.ThrowExceptionsOnInvalidImages = True
Dim leadImage As RasterImage = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "Master.jpg"))
' Prepare the command
Dim cmd As New SliceCommand
cmd.FillColor = New RasterColor(0, 0, 0)
cmd.MaximumDeskewAngle = 40
cmd.Flags = SliceCommandFlags.Bicubic Or SliceCommandFlags.WithoutCut Or SliceCommandFlags.DeskewImage
' Apply the slice command on the image.
cmd.Run(leadImage)
' Print out the deskew amount.
Console.WriteLine("Deskew Angle = {0}", cmd.DeskewAngle)
End Sub
Private Sub SliceEventExample_SliceCommand(ByVal sender As Object, ByVal e As SliceCommandEventArgs) Handles sliceEventExample_S1.Slice
' create a region around the slice
If (e.Image.HasRegion) Then
e.Image.AddRectangleToRegion(Nothing, e.SliceRectangle, RasterRegionCombineMode.Xor)
Else
e.Image.AddRectangleToRegion(Nothing, e.SliceRectangle, RasterRegionCombineMode.Set)
End If
' print out the deskew angle
Console.WriteLine("The rotation Amount is {0}", e.DeskewAngle)
End Sub
Public NotInheritable Class LEAD_VARS
Public Const ImagesDir As String = "C:\LEADTOOLS21\Resources\Images"
End Class
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