Dynamsoft Home|Product Home

Dynamic TWAIN FAQ

General Questions:

  1. What is TWAIN?
  2. What is Dynamic TWAIN?
  3. For which purposes can I use Dynamic TWAIN ?
  4. Is there an edition of Dynamic TWAIN designed for web environment?
  5. Who do I contact if I need technical support?
  6. I would like to request some features in the next version of Dynamic TWAIN. Where do I make these requests?
  7. I have problems. What should I do?
  8. What is Live Help?
  9. What are the major differences between the Coding Service and usual customer support?

Distribution Questions:

  1. How do I distribute my application?
  2. What files I need to include in the setup package of my program?

Question on Features:

  1. What operating systems will Dynamic TWAIN work with?
  2. What programming languages can Dynamic TWAIN work with?

Programming:

  1. How can I acquire black-white images?
  2. How can I work without User Interface?
  3. How can I scan only a part of a picture?
  4. How can I select necessary device without device selection dialog?
  5. How can I disable progress indicator dialog when I acquire images without UI?
  6. How can I set resolution in the X and Y direction separately?
  7. How to use ADF? We want to save each document in a separate file.

General Questions:

1.    What is TWAIN?
TWAIN is a protocol and Application Programming Interface (API) that standardizes communication between an application and image acquisition devices such as scanners and digital cameras. This standard allows a developer to make standard calls to any image acquisition device that supports TWAIN. Thus the application would not have to be rewritten to support every device. TWAIN has been in existence since 1992 and is governed by the TWAIN Working Group.

2.    What is Dynamic TWAIN?
Dynamic TWAIN ActiveX control enables you to acquire images from any TWAIN compatible devices. With the carefully designed interface, and the built-in wizard mode, Dynamic TWAIN is very easy to use. You can typically do your TWAIN job in several lines of code. At the same time, Dynamic TWAIN is very powerful. It is compatible with TWAIN specification V1.9. It has built-in JPEG encoder and decoder. It supports all three image transfer modes and many other features.

3.    For which purposes can I use Dynamic TWAIN?
 Dynamic TWAIN can be used for controlling any work of scanners, digital cameras and any other devices which support TWAIN standard.

4.    Is there an edition of Dynamic TWAIN designed for web environment?
Yes, we have Dynamic Web TWAIN. It has many features specifically designed for web environment, such as uploading and downloading images through FTP or HTTP protocol. Image can be displayed within Dynamic Web TWAIN without exchanging image data between the ActiveX control and the <img> HTML tag.

5.    Who do I contact if I need technical support?
1. We provide at least 20 hours Live Support per weekday. Live Support is an online chat service for our customers to interact with our support professional in real time.

2. You can email our support team. Our email address for TWAIN family products is support@dynamsoft.com.

6.    I would like to request some features in the next version of Dynamic TWAIN.  Where do I make these requests?
Email us at Support@dynamsoft.com. Your feature requirement is very important to us.

7.    I have problems. What should I do?
The information on most of questions can be found in the documentation or in this FAQ. Write to our support team to get more help.

8.  What is Live Help?
DynamSoft is committed to providing the best customer support in the industry. Our support team is ready to offer high quality, friendly and responsively technical support for our valued registered users.

9.   What are the major differences between the Coding Service and usual customer support?

Distribution Questions:

1. How do I distribute my application?
Runtime distribution is royalty free.

Only DynamicTwainCtrl.dll is distributable with end user application. All other files and documentations can NOT be distributed.

YOU MUST NOT DISTRIBUTE DYNAMICTWAIN4.LIC.

Dynamic TWAIN is very easy to distribute. Since Dynamic TWAIN is developed directly with pure Win32 API and assembly language, no additional supporting DLL or file is needed to distribute Dynamic TWAIN. JPEG encoder is the built-in feature of Dynamic TWAIN and no additional DLL is needed either.

2. What files I need to include in the setup package of my program?

You need DynamicTwainCtrl.dll in the setup package only. Absolutely no other supporting library is needed.

Question on Features:

1.    What operating systems will Dynamic TWAIN work with?
Dynamic TWAIN can support Windows 95, 98, NT, XP, 2000 and 2003.

2.    What programming languages can Dynamic TWAIN work with?
Dynamic Twain can be used in any COM-enlightened program language, such as C#, VB.NET, Visual C++, Visual Basic, Delphi, HTML/VBScript/JavaScript, and PowerBuilder and so on.

Programming:
 

1. How can I acquire black-white images?

Twain1.OpenSource
Twain1.IfShowUI = False
Twain1.IfDisableSourceAfterAcquire = True
Twain1.PixelType = 0 'Black - White image : 0

Twain1.AcquireImage

2. How can I work without User Interface?

Private Sub BeginScan()

    Twain1.OpenSource
    Twain1.IfShowUI = False 'set without user interface
    Twain1.IfDisableSourceAfterAcquire = True

    Twain1.AcquireImage

End Sub

Private Sub Twain1_OnPostTransfer()

    Twain1.SaveAsBMP ("c:\temp.bmp", 0)

End Sub

3. How can I scan only a part of a picture?

Twain1.SelectSource
Twain1.OpenSource

Twain1.IfShowUI = False

'Set Image Layout
Twain1.Unit = 0 'INCHES
Twain1.SetImageLayout 0, 0, 5, 5

Twain1.AcquireImage

4. How can I select necessary device without device selection dialog?

Dim lngNum As Long 'For loop.

Twain1.OpenSourceManager

For lngNum = 0 To Twain1.SourceCount - 1
    If (Twain1.SourceNameItems(lngNum) = "Specified device name" Then
        Twain1.SelectSourceByIndex (lngNum)
    End If
Next

'if can't find the specified source, it'll select the default source
Twain1.AcquireImage

5. How can I disable progress indicator dialog when I acquire images without UI?

Twain1.IfShowUI = False
Twain1.IfDisableSourceAfterAcquire = True

Twain1.OpenSource
Twain1.IfShowIndicator = False

Twain1.AcquireImage

6. How can I set resolution in the X and Y direction separately?

Twain1.SelectSource
Twain1.OpenSource

'Set XRESOLUTION current value.
Twain1.Capability = ICAP_XRESOLUTION
Twain1.CapType = TWON_ONEVALUE
Twain1.CapValue = 300
If (Twain1.CapSet = False) Then
    MsgBox "Failed to set the x-resolution." + vbCrLf + Twain1.ErrorString, vbCritical
End If

'Set YRESOLUTION current value.
Twain1.Capability = ICAP_YRESOLUTION
Twain1.CapType = TWON_ONEVALUE
Twain1.CapValue = 200
If (Twain1.CapSet = False) Then
    MsgBox "Failed to set the y-resolution." + vbCrLf + Twain1.ErrorString, vbCritical
End If

Twain1.AcquireImage

7. How to use ADF? We want to save each document in a separate file.

Dim iDocumentCounter As Integer

iDocumentCounter = 0 'set initialize value

Private Sub BeginScan()
    Twain1.OpenSource

    Twain1.IfShowUI = False
    Twain1.IfDisableSourceAfterAcquire = True
    If Twain1.Duplex <> 0 Then
        Twain1.IfDuplexEnabled = True 'enable duplex
    End If

    If Twain1.IfFeederEnabled = True Then
        Twain1.XferCount = -1
        Twain1.IfAutoFeed = True 'auto feed

        If Twain1.IfFeederLoaded = True Then
            Twain1.AcquireImage
        End If
    End If

End Sub

Private Sub Twain1_OnPosttransfer()

    iDocumentCounter = iDocumentCounter + 1

    If Twain1.SaveAsBMP("c:\Image\" + Str(iDocumentCounter) + ".bmp", 0) = False Then
        MsgBox Twain1.ErrorString
    End If

End Sub