C/C++ Sample: Acquire and save to BMP file
The following 'C' / C++ function is all that is required to do the following:
___________________________________________________________________ #include <dtwain.h> #include <tchar.h> // for Windows _T macro to denote string type
void ExampleFunction( ) { DTWAIN_SOURCE TheSource; /* The TWAIN Data Source */ DTWAIN_BOOL RetVal; LONG Status;
/* Check if TWAIN exists. Return if TWAIN is not installed */ if ( DTWAIN_IsTwainAvailable( ) == 0 ) return;
/* Initialize DTWAIN DLL, return if there is a problem */ if ( DTWAIN_SysInitialize( ) == 0 ) return;
/* Select the Twain Source */ TheSource = DTWAIN_SelectSource( );
/* If no Source selected or there is a problem, uninitialize DLL and return */ if ( TheSource == NULL ) { return; }
/* Proceed to acquire image and save to a bmp file */ RetVal = DTWAIN_AcquireFile(TheSource, /* Source */ _T("test.bmp"), /* File name */ DTWAIN_BMP, /* File type is BMP */ DTWAIN_USENATIVE | DTWAIN_USENAME, /* acquisition options */ DTWAIN_PT_DEFAULT, /* use default color type */ 1, /* Acquire 1 page */ TRUE, /* Show the device's user interface */ FALSE. /* Do not keep Source open when finished. */ &Status); /* returned status */
/* Close down TWAIN, Data Sources, etc. */ }
__________________________________________________________________
The example above is a C or C++ function that demonstrates some of the power of DTWAIN. The only functions that are DTWAIN specific are the following:
DTWAIN_IsTwainAvailable is only optional. DTWAIN will still work correctly in a system that has no TWAIN drivers installed by returning an error if a selection of a TWAIN device is attempted.
Note that DTWAIN has the ability to save the images to a file (as in the example above shows), or if your application wants the raw image data, a "handle" to the image data can be returned instead of writing the image data to a file.
|