Scanning with FineReader Engine - Sample

FineReader Engine
Knowledge Base & Support
Code Samples Collection
Import & Scanning
image: icon_Scanning.gif
  • Extended Scanning Capabilities in V11 Windows:
    • Asynchronous Scanning enables recognition of scanned pages before scanning of all pages is finished.
    • Extended access to scan settings, including access to scan source capabilities.
    • Ability to specify compression type of scanned images.
    • The new code sample makes it easy to implement better and faster scanning to your application.

This precompiled code sample provides an implementation of a “scanning station.” It lets the user select the scanner, set up scanning options, and scan images into a specified folder.


The sample retrieves a list of scanners available on your workstation and allows you to filter the list by API type and scanning options dialog box type. By default, all API types are selected, and the dialog box is turned off.

After selecting the scanning source and specifying the path to the folder where the results should be saved, click Scan to perform scanning.

By default, if you choose to display no dialog box, the scanner is set to scan multiple images with 10-second delay between them. The duplex scanning mode is retrieved from scanner built-in defaults.

The sample uses the following procedure:

  1. Create the Engine object using the GetEngineObject function.
  2. Load the “Default” predefined profile for your scenario using the LoadPredefinedProfile method of the Engine object.
  3. Create a ScanManager object using the CreateScanManager method of the Engine object.
  4. Retrieve a list of scanners using the FindScanSources method of the ScanManager object. Select one of these sources.
  5. Set up the necessary scanning options for this scanner through the ScanSettings property of the ScanSource object.
  6. Implement the methods of the IScanCallback interface for notifications about the progress of scanning. Create an object of your class which provides this interface.
  7. Start scanning using the BeginScan method of the ScanSource object.
  8. Release the objects and unload FineReader Engine using the DeinitializeEngine function.

Please refer to the source code for implementation details.

Back To:

This website uses cookies which enable you to see pages or use other functions of our websites. You can turn off such cookies in your browser’s settings. If you continue to use these pages, you consent to the use of cookies.