Imports Leadtools.Services
Imports leadtools.services.datacontracts._2009._01
Imports leadtools.services.raster.datacontracts._2009._01
Imports leadtools.services.imageprocessing.datacontracts._2009._01
Public Sub BorderRemoveExample()
Dim client As DocumentProcessingServiceClient = New DocumentProcessingServiceClient()
Dim sourceBinaryData As RawBinaryData = New RawBinaryData()
sourceBinaryData.Data = File.ReadAllBytes(Path.Combine(LEAD_VARS.ImagesDir, "clean.tif"))
Dim convertOptions As RasterConvertOptions = New RasterConvertOptions()
convertOptions.Source = sourceBinaryData
convertOptions.Destination = Nothing
convertOptions.Format = RasterImageFormat.Bmp
convertOptions.FirstPage = 1
convertOptions.LastPage = 1
convertOptions.BitsPerPixel = 24
convertOptions.QualityFactor = 2
Dim request As BorderRemoveRequest = New BorderRemoveRequest()
request.ConvertOptions = convertOptions
request.RegionData = Nothing
request.Flags = BorderRemoveCommandFlags.UseVariance Or BorderRemoveCommandFlags.GetRegion
request.BorderFlags = BorderRemoveBorderFlags.All
request.Percent = 20
request.WhiteNoiseLength = 9
request.Variance = 3
Dim response As DocumentResponse = client.BorderRemove(request)
If Not response.Destination Is Nothing Then
If TypeOf response.Destination Is RawBinaryData Then
File.WriteAllBytes(Path.Combine(LEAD_VARS.ImagesDir, "BorderRemove.bmp"), (TryCast(response.Destination, RawBinaryData)).Data)
End If
End If
If Not response.Region Is Nothing Then
Dim bitmap As Bitmap = New Bitmap(Path.Combine(LEAD_VARS.ImagesDir, "smooth.bmp"))
Dim graphics As Graphics = graphics.FromImage(bitmap)
Dim region1 As Region = New Region()
Dim regionData As RegionData = region1.GetRegionData()
regionData.Data = response.Region.Data
Dim region2 As Region = New Region(regionData)
graphics.FillRegion(Brushes.Red, region2)
bitmap.Save(Path.Combine(LEAD_VARS.ImagesDir, "BorderRegion.bmp"))
region2.Dispose()
region1.Dispose()
bitmap.Dispose()
graphics.Dispose()
End If
client.Close()
End Sub
Public NotInheritable Class LEAD_VARS
Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images"
End Class
using Leadtools.Services;
using leadtools.services.datacontracts._2009._01;
using leadtools.services.raster.datacontracts._2009._01;
using leadtools.services.imageprocessing.datacontracts._2009._01;
public void BorderRemoveExample()
{
DocumentProcessingServiceClient client = new DocumentProcessingServiceClient();
RawBinaryData sourceBinaryData = new RawBinaryData();
sourceBinaryData.Data = File.ReadAllBytes(Path.Combine(LEAD_VARS.ImagesDir,"clean.tif"));
RasterConvertOptions convertOptions = new RasterConvertOptions();
convertOptions.Source = sourceBinaryData;
convertOptions.Destination = null;
convertOptions.Format = RasterImageFormat.Bmp;
convertOptions.FirstPage = 1;
convertOptions.LastPage = 1;
convertOptions.BitsPerPixel = 24;
convertOptions.QualityFactor = 2;
BorderRemoveRequest request = new BorderRemoveRequest();
request.ConvertOptions = convertOptions;
request.RegionData = null;
request.Flags = BorderRemoveCommandFlags.UseVariance | BorderRemoveCommandFlags.GetRegion;
request.BorderFlags = BorderRemoveBorderFlags.All;
request.Percent = 20;
request.WhiteNoiseLength = 9;
request.Variance = 3;
DocumentResponse response = client.BorderRemove(request);
if (response.Destination != null)
{
if (response.Destination is RawBinaryData)
File.WriteAllBytes(Path.Combine(LEAD_VARS.ImagesDir, "BorderRemove.bmp"), (response.Destination as RawBinaryData).Data);
}
if (response.Region != null)
{
Bitmap bitmap = new Bitmap(Path.Combine(LEAD_VARS.ImagesDir,"smooth.bmp"));
Graphics graphics = Graphics.FromImage(bitmap);
Region region1 = new Region();
RegionData regionData = region1.GetRegionData();
regionData.Data = response.Region.Data;
Region region2 = new Region(regionData);
graphics.FillRegion(Brushes.Red, region2);
bitmap.Save(Path.Combine(LEAD_VARS.ImagesDir,"BorderRegion.bmp"));
region2.Dispose();
region1.Dispose();
bitmap.Dispose();
graphics.Dispose();
}
client.Close();
}
static class LEAD_VARS
{
public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images";
}