Take the following steps to start a project and to add some code that acquires the images using Fast Twain:
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 "UsingFastTwainFeature" 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 2 instances of RadioButton control to the top of the form and set the following properties for them:
Text | Name | Checked |
Native | radioNative | False |
Memory | radioMemory | False |
Go to the toolbox (View->Toolbox) and Drag and drop a 1 instance of Button control to the top of the form and set the following properties for them:
Text | Name |
---|---|
Fast Acquire | buttonFastAcquire |
Go to the toolbox (View->Toolbox) and Drag and drop an instance of Check Box control to the top of the form and set the following properties for them:
Name | Name |
---|---|
Use Buffer Size | checkBoxUseBufferSize |
Go to the toolbox (View->Toolbox) and Drag and drop 2 instances of Text Box control to the top of the form and change the following properties:
Property | Value |
---|---|
Name | textBufferSize |
Name | textFileName |
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 Leadtools
Imports Leadtools.Twain
Imports Leadtools.Codecs
Imports Leadtools.WinForms
using Leadtools;
using Leadtools.Twain;
using Leadtools.Codecs;
using Leadtools.WinForms;
Declare the following private variable:
Private WithEvents twnSession As TwainSession
private TwainSession twnSession;
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.Load
textFileName.Text = "c:\twain_test.tif"
textBufferSize.Text = "2048"
Try
' 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 TwainSession
twnSession.Startup(Me.Handle, "manufacturer", "productFamily", "version", "application", TwainStartupFlags.InitializeMultithreaded)
Catch ex As Exception
MessageBox.Show(ex.Message)
End Try
End Sub
private void Form1_Load(object sender, System.EventArgs e)
{
textFileName.Text = @"c:\twain_test.tif";
textBufferSize.Text = "2048";
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.InitializeMultithreaded);
}
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 System.Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles MyBase.FormClosing
Try
twnSession.Shutdown()
Catch ex As Exception
MessageBox.Show(ex.Message)
End Try
End 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 buttonFastAcquire Click event and code it as follows:
Private Sub buttonFastAcquire_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles buttonFastAcquire.Click
Dim transferMode As TwainTransferMode
Dim transferFormat As RasterImageFormat
If radioMemory.Checked Then
transferMode = TwainTransferMode.Buffer
transferFormat = RasterImageFormat.CcittGroup4
Else
transferMode = TwainTransferMode.Native
transferFormat = RasterImageFormat.Tif
End If
Try
twnSession.AcquireFast(textFileName.Text, _
TwainFastUserInterfaceFlags.Show Or TwainFastUserInterfaceFlags.UseThread, _
transferMode, _
transferFormat, _
1, _
True, _
Convert.ToInt32(textBufferSize.Text), _
checkBoxUseBufferSize.Checked)
Catch ex As Exception
MessageBox.Show(ex.Message)
End Try
End Sub
private void buttonFastAcquire_Click(object sender, System.EventArgs e)
{
TwainTransferMode transferMode;
RasterImageFormat transferFormat;
if (radioMemory.Checked)
{
transferMode = TwainTransferMode.Buffer;
transferFormat = RasterImageFormat.CcittGroup4;
}
else
{
transferMode = TwainTransferMode.Native;
transferFormat = RasterImageFormat.Tif;
}
try
{
twnSession.AcquireFast(textFileName.Text,
TwainFastUserInterfaceFlags.Show | TwainFastUserInterfaceFlags.UseThread,
transferMode,
transferFormat,
1,
true,
Convert.ToInt32(textBufferSize.Text),
checkBoxUseBufferSize.Checked);
}
catch (Exception ex)
{
MessageBox.Show(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