Take the following steps to start a project and to add some code to find the fastest configuration for your scanner using the LEADTOOLS Fast TWAIN feature:
Start Visual Studio.
Choose File->New->Project… from the menu.
In the New Project dialog box, choose either "Visual C# Projects" or "VB Projects" in the Projects Type List, and choose "Windows Application" in the Templates List.
Type the project name as "GetFastTwainScan" in the Project Name field, and then choose OK. If desired, type a new location for your project or select a directory using the Browse button, and then choose OK.
In the "Solution Explorer" window, right-click on the "References" folder, and select "Add Reference…" from the context menu. In the "Add Reference" dialog box, select the ".NET" tab and browse to Leadtools For .NET "<LEADTOOLS_INSTALLDIR>\Bin\Dotnet\Win32" folder and select the following DLLs:
Click the Select button and then press the OK button to add the above DLLs to the application.
Go to the toolbox (View->Toolbox) and Drag and drop 3 instances of Button control to the top of the form and set the following properties for them:
| Text | Name |
|---|---|
| Select Source | buttonSelectSource |
| Find Fast Config | buttonFindFastConfig |
| Acquire Fast Config | buttonAcquireFastConfig |
Switch to Form1 code view (right-click Form1 in the solution explorer then select View Code ) and add the following lines at the beginning of the file:
Imports LeadtoolsImports Leadtools.TwainImports Leadtools.CodecsImports Leadtools.WinForms
using Leadtools;using Leadtools.Twain;using Leadtools.Codecs;using Leadtools.WinForms;
Declare the following private variable:
Private WithEvents twnSession As TwainSessionPrivate fastConfigResult As TwainFindFastConfigurationResult
private TwainSession twnSession;private TwainFindFastConfigurationResult fastConfigResult;
Add an event handler to the Form1 Load event and code it as follows:
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.LoadTry' Unlock Document support.' Note that this is a sample key, which will not work in your toolkit.Dim MY_LICENSE_FILE As String = "d:\temp\TestLic.lic"Dim MY_DEVELOPER_KEY As String = "xyz123abc"RasterSupport.SetLicense(MY_LICENSE_FILE, MY_DEVELOPER_KEY)twnSession = new TwainSessiontwnSession.Startup(Me.Handle, "manufacturer", "productFamily", "version", "application", TwainStartupFlags.None)Catch ex As ExceptionMessageBox.Show(ex.Message)End TryEnd Sub
private void Form1_Load(object sender, System.EventArgs e){try{// Unlock Document support.// Note that this is a sample key, which will not work in your toolkit.string MY_LICENSE_FILE = "d:\\temp\\TestLic.lic";string MY_DEVELOPER_KEY = "xyz123abc";RasterSupport.SetLicense(MY_LICENSE_FILE, MY_DEVELOPER_KEY);twnSession = new TwainSession();twnSession.Startup(this.Handle, "manufacturer", "productFamily", "version", "application", TwainStartupFlags.None);}catch (Exception ex){MessageBox.Show(this, ex.Message);}}
Add an event handler to the Form1 Closing event and code it as follows:
Private Sub Form1_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosingTrytwnSession.Shutdown()Catch ex As ExceptionMessageBox.Show(ex.Message)End TryEnd Sub
private void Form1_FormClosing(object sender, FormClosingEventArgs e){try{twnSession.Shutdown();}catch (Exception ex){MessageBox.Show(this, ex.Message);}}
Add an event handler to the buttonSelectSource Click event and code it as follows:
Private Sub buttonSelectSource_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles buttonSelectSource.ClickTrytwnSession.SelectSource(String.Empty)Catch ex As ExceptionMessageBox.Show(ex.Message)End TryEnd Sub
private void buttonSelectSource_Click(object sender, System.EventArgs e){try{twnSession.SelectSource(string.Empty);}catch (Exception ex){MessageBox.Show(this, ex.Message);}}
Add an event handler to the buttonFindFastConfig Click event and code it as follows:
Private Sub buttonFindFastConfig_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles buttonFindFastConfig.ClickTrytwnSession.EnableFastConfigurationEvent = FalsefastConfigResult = twnSession.FindFastConfiguration("C:\Users\Public\Documents\LEADTOOLS Images", TwainFastUserInterfaceFlags.Show Or TwainFastUserInterfaceFlags.UseThread, 8, 5, Nothing)Catch ex As ExceptionMessageBox.Show(ex.Message)End TryEnd Sub
private void buttonFindFastConfig_Click(object sender, System.EventArgs e){try{twnSession.EnableFastConfigurationEvent = false;fastConfigResult = twnSession.FindFastConfiguration(@"C:\Users\Public\Documents\LEADTOOLS Images", TwainFastUserInterfaceFlags.Show | TwainFastUserInterfaceFlags.UseThread, 8, 5, null);}catch (Exception ex){MessageBox.Show(this, ex.Message);}}
Add an event handler to the buttonAcquireFastConfig Click event and code it as follows:
Private Sub buttonAcquireFastConfig_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles buttonAcquireFastConfig.ClickTrytwnSession.EnableAcquireMultiPageEvent = FalsetwnSession.AcquireFast("C:\Users\Public\Documents\LEADTOOLS Images\test", _TwainFastUserInterfaceFlags.Show, _fastConfigResult.Best.TransferMechanism, _fastConfigResult.Best.ImageFormat, _fastConfigResult.Best.BitsPerPixel, _True, _fastConfigResult.Best.BufferSize, _True)Catch ex As ExceptionMessageBox.Show(ex.Message)End TryEnd Sub
private void buttonAcquireFastConfig_Click(object sender, System.EventArgs e){try{twnSession.EnableAcquireMultiPageEvent = false;twnSession.AcquireFast(@"C:\Users\Public\Documents\LEADTOOLS Images\test",TwainFastUserInterfaceFlags.Show,fastConfigResult.Best.TransferMechanism,fastConfigResult.Best.ImageFormat,fastConfigResult.Best.BitsPerPixel,true,fastConfigResult.Best.BufferSize,true);}catch (Exception ex){MessageBox.Show(this, ex.Message);}}
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
