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 InvertedTextExample()
   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 InvertedTextRequest = New InvertedTextRequest()
   request.ConvertOptions = convertOptions
   request.RegionData = Nothing
   request.Flags = InvertedTextCommandFlags.UseDpi Or InvertedTextCommandFlags.GetRegion
   request.MinimumInvertWidth = 5000
   request.MinimumInvertHeight = 500
   request.MinimumBlackPercent = 70
   request.MaximumBlackPercent = 95
   Dim response As DocumentResponse = client.InvertedText(request)
   If Not response.Destination Is Nothing Then
      If TypeOf response.Destination Is RawBinaryData Then
         File.WriteAllBytes(Path.Combine(LEAD_VARS.ImagesDir, "InvertedText.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, "InvertedText.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, "InvertedTextRegion.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 InvertedTextExample()
{
   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;
   InvertedTextRequest request = new InvertedTextRequest();
   request.ConvertOptions = convertOptions;
   request.RegionData = null;
   request.Flags = InvertedTextCommandFlags.UseDpi | InvertedTextCommandFlags.GetRegion;
   request.MinimumInvertWidth = 5000;
   request.MinimumInvertHeight = 500;
   request.MinimumBlackPercent = 70;
   request.MaximumBlackPercent = 95;
   DocumentResponse response = client.InvertedText(request);
   if (response.Destination != null)
   {
      if (response.Destination is RawBinaryData)
         File.WriteAllBytes(Path.Combine(LEAD_VARS.ImagesDir,"InvertedText.bmp"), (response.Destination as RawBinaryData).Data);
   }
   if (response.Region != null)
   {
      Bitmap bitmap = new Bitmap(Path.Combine(LEAD_VARS.ImagesDir, "InvertedText.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, "InvertedTextRegion.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";
}