Library version 5.0
The DynaRithmic® TWAIN Library (also known as DTWAIN) is an open source, powerful programmer's library that will allow you to easily integrate TWAIN image acquisition from any TWAIN scanner or digital camera into your applications.
DTWAIN is implemented as a 32-bit and 64-bit Dynamic Link Library (DLL).
DTWAIN is supported under Windows XP / Windows 7 / Windows 8 / Windows 10 operating systems.
Note: For 64-bit TWAIN drivers and devices, the application developed must be 64-bit, plus the 64-bit version of the DTWAIN DLL must be used.
DTWAIN has over 350 functions that allow you to communicate with your TWAIN device, adding power and flexibility to the library. If you're a programmer and you are tired of attempting to get TWAIN image retrieval implemented within your application successfully, or do not want to get bogged down in the details of the hard-to-implement TWAIN specification for communicating with TWAIN devices, this library is exactly what you need.
Here are some of the features of DTWAIN:
32-bit and 64-bit Dynamic Link Library (DLL) for Windows operating systems..
DTWAIN will acquire from 64-bit TWAIN drivers and devices (application developed must also be 64-bit).
DTWAIN works with any Microsoft Window's programming language that can call exported DLL functions. This includes C, C++, Visual Basic, Delphi, etc.
Over 350 functions are available for robust communication and handling of TWAIN devices.
Acquire Images from any TWAIN compliant scanner or digital camera, webcam, etc..
As few as 4 function calls to acquire multiple pages from a TWAIN device.
DTWAIN eliminates the need to code TWAIN message loops or error-prone TWAIN state transition logic.
Acquire single or multiple pages as Device Independent Bitmaps (DIBs) or compressed images using buffered memory transfers.
Support for scanners equipped with an automatic document feeder.
Support for duplex scanners.
Acquire using Native, Buffered (compressed and uncompressed images), or File Mode. Native and Buffered modes allow your application to process the image data directly.
Save acquired images to a number of image file formats.
Supported formats are as follows:
TIFF (LZW, JPEG, Flate, PackBits, No Compression) - Single and Multipage
Windows Meta File
Enhanced Meta File
Windows ICON files (both non-Vista and Vista style icons)
Wireless Bitmap (WBMP)
Text format (OCR engine required)
Adobe PDF (only available with DTWAIN/PDF additional library)
PostScript Level 1 and Level 2 (only available with
DTWAIN/PDF additional library)
Acquire images to the Windows Clipboard.
Acquire images with or without the device user interface (fully TWAIN compliant devices only).
Acquire images to PDF files (save PDF files as encrypted or non-encrypted files).
Specify area of image to acquire.
Blank page detection and removal.
Optionally keep TWAIN Source open between acquisitions, allowing for faster image retrieval.
Set contrast, brightness, and many other capabilities.
Optical Character Recognition functions (Transym OCR engine supported). Retrieve text from image files using OCR.
Support for acquiring images from two-sided (duplex) documents without need of a duplex scanner.
Set orientation and paper sizes (fully TWAIN compliant devices only).
Get all supported capabilities for a particular TWAIN Source in a single function call.
Set or get any capability that a TWAIN device supports, including custom device capabilities defined by the manufacturer. All of this is done without the headaches of coding hard to use TWAIN containers!
Select a Data Source using the TWAIN Select Source Dialog, Source Name or Default Source.
DTWAIN gives your app the option of handling the TWAIN message interception or letting DTWAIN handle the message interception.
DTWAIN has a super-simple implementation of the TWAIN message loop interception (if you want your application to handle the message interception).
DTWAIN allows your application to shut TWAIN down gracefully and easily.
Check for external events (only for TWAIN Specification 1.8 and above).
Extensive error handling. Locale (language) specific error messages.
A logging feature that logs all TWAIN calls to the Source Manager. If your program crashes, the log will let you know what the last operation that was executed. The log can be written to a file or to a debug monitor window (such as DebugView from www.sysinternals.com or the Visual C++ "Output Window" when debugging in Visual C++).
DTWAIN allows you to call the TWAIN Source Manager directly. This mode is useful for the advanced TWAIN programmer who want to "inject" their own custom TWAIN Source Manager calls within the application (C or C++ is the recommended language to use this feature).
Optional INI settings for handling Sources that are not TWAIN compliant. Useful for Sources that generate potential fatal errors when negotiating capabilities in the "normal" manner.
Includes full on-line help with example programs.
And many more features and functions.
If you are attempting to implement TWAIN image retrieval in your application, here are a few of the benefits:
Reduce time drastically in implementing TWAIN. Usually it may take a few weeks to months to get a robust TWAIN implementation working in an application when using the TWAIN specification. This time can be reduced from a few months to less than a day's work (don't be surprised if it's just a few minutes work!).
Enhances your current imaging library. Many imaging libraries that implement TWAIN are excellent at what they are designed for -- displaying images. However, TWAIN image support in these libraries can be anything from very poor to a minimal implementation of TWAIN. With DTWAIN you can take full advantage of practically anything that TWAIN has to offer. If you are currently using an imaging library that has some TWAIN support, check the function list and flexibility of DTWAIN with your current library's TWAIN support.