Imports Leadtools
Imports Leadtools.Twain
Public Sub twain_FastConfiguration(ByVal sender As Object, ByVal e As TwainFastConfigurationEventArgs)
' ... set your code here
e.Stop = False
End Sub
Public Sub FindFastConfigurationExample(ByVal parent As IntPtr)
Dim session As TwainSession = New TwainSession()
session.Startup(parent, "manufacturer", "productFamily", "version", "application", TwainStartupFlags.None)
session.EnableFastConfigurationEvent = True
AddHandler session.FastConfiguration, AddressOf twain_FastConfiguration
Dim twFastConfig As RasterCollection(Of TwainFastConfiguration) = Nothing
Dim tempFastConfig As TwainFastConfiguration = New TwainFastConfiguration()
tempFastConfig = TwainFastConfiguration.Default
tempFastConfig.TransferMechanism = TwainTransferMode.File
tempFastConfig.ImageFormat = Leadtools.RasterImageFormat.Bmp
tempFastConfig.BitsPerPixel = 1
twFastConfig.Add(tempFastConfig)
tempFastConfig.TransferMechanism = TwainTransferMode.File
tempFastConfig.ImageFormat = Leadtools.RasterImageFormat.Tif
tempFastConfig.BitsPerPixel = 1
twFastConfig.Add(tempFastConfig)
Dim fastConfigRes As TwainFindFastConfigurationResult
Try
fastConfigRes = session.FindFastConfiguration(Path.Combine(LEAD_VARS.ImagesDir, ""), TwainFastUserInterfaceFlags.Show, 0, 1, twFastConfig)
Dim msg As String
MessageBox.Show("FindFastConfig method was successful")
msg = String.Format("Result Scan Configs count = {0}", fastConfigRes.Tested.Count)
MessageBox.Show(msg)
msg = String.Format("Transfer Mode = {0}" & Constants.vbLf & "File Format = {1}" & Constants.vbLf & "Buffer Size = {2}" & Constants.vbLf & "Required Time = {3}" & Constants.vbLf, fastConfigRes.Tested(0).TransferMechanism, _
fastConfigRes.Tested(0).ImageFormat, fastConfigRes.Tested(0).BufferSize, fastConfigRes.Tested(0).RequiredTime)
MessageBox.Show(msg, "Tested Scan Configurations...")
msg = String.Format("Transfer Mode = {0}" & Constants.vbLf & "File Format = {1}" & Constants.vbLf & "Buffer Size = {2}" & Constants.vbLf & "Required Time = {3}" & Constants.vbLf, fastConfigRes.Best.TransferMechanism, _
fastConfigRes.Best.ImageFormat, fastConfigRes.Best.BufferSize, fastConfigRes.Best.RequiredTime)
MessageBox.Show(msg, "Best Scan Configurations...")
Catch ex As Exception
MessageBox.Show(ex.Message)
End Try
session.Shutdown()
End Sub
Public NotInheritable Class LEAD_VARS
Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images"
End Class
using Leadtools;
using Leadtools.Twain;
public void twain_FastConfiguration(object sender, TwainFastConfigurationEventArgs e)
{
// ... set your code here
e.Stop = false;
}
public void FindFastConfigurationExample(IntPtr parent)
{
TwainSession session = new TwainSession();
session.Startup(parent, "manufacturer", "productFamily", "version", "application", TwainStartupFlags.None);
session.EnableFastConfigurationEvent = true;
session.FastConfiguration += new EventHandler<TwainFastConfigurationEventArgs>(twain_FastConfiguration);
RasterCollection<TwainFastConfiguration> twFastConfig = null;
TwainFastConfiguration tempFastConfig = new TwainFastConfiguration();
tempFastConfig = TwainFastConfiguration.Default;
tempFastConfig.TransferMechanism = TwainTransferMode.File;
tempFastConfig.ImageFormat = Leadtools.RasterImageFormat.Bmp;
tempFastConfig.BitsPerPixel = 1;
twFastConfig.Add(tempFastConfig);
tempFastConfig.TransferMechanism = TwainTransferMode.File;
tempFastConfig.ImageFormat = Leadtools.RasterImageFormat.Tif;
tempFastConfig.BitsPerPixel = 1;
twFastConfig.Add(tempFastConfig);
TwainFindFastConfigurationResult fastConfigRes;
try
{
fastConfigRes = session.FindFastConfiguration(Path.Combine(LEAD_VARS.ImagesDir, ""), TwainFastUserInterfaceFlags.Show, 0, 1, twFastConfig);
string msg;
MessageBox.Show("FindFastConfig method was successful");
msg = String.Format("Result Scan Configs count = {0}", fastConfigRes.Tested.Count);
MessageBox.Show(msg);
msg = String.Format("Transfer Mode = {0}\nFile Format = {1}\nBuffer Size = {2}\nRequired Time = {3}\n",
fastConfigRes.Tested[0].TransferMechanism,
fastConfigRes.Tested[0].ImageFormat,
fastConfigRes.Tested[0].BufferSize,
fastConfigRes.Tested[0].RequiredTime);
MessageBox.Show(msg, "Tested Scan Configurations...");
msg = String.Format("Transfer Mode = {0}\nFile Format = {1}\nBuffer Size = {2}\nRequired Time = {3}\n",
fastConfigRes.Best.TransferMechanism,
fastConfigRes.Best.ImageFormat,
fastConfigRes.Best.BufferSize,
fastConfigRes.Best.RequiredTime);
MessageBox.Show(msg, "Best Scan Configurations...");
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
session.Shutdown();
}
static class LEAD_VARS
{
public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images";
}