Scanners and Cameras

TWAIN is an API. It facilitates seamless communication between imaging devices and software, without requiring that each image device and software combination have a different driver or API implementation. Each scanner or camera has one TWAIN driver that can be used by any application designed to manipulate images. Each layer of the TWAIN architecture works with adjacent layers to pass image data from an input device, such as a camera or scanner, to an application, such as Picture It! Windows 2000 includes version 1.6.1.3 of the TWAIN source manager. The TWAIN source manager lists possible sources of imaging data, such as specific types of scanners or cameras.

TWAIN Architectural Layers

TWAIN is comprised of a number of architectural layers, each of which serve a different function in transferring an image from a scanner or camera to an application. The TWAIN layers are as follows:

  • Application layer: An application such as Microsoft Picture It!, which is used to acquire an image from a TWAIN-compliant input device, such as a scanner or digital camera. The application requesting an image sends the request to the TWAIN data source.

  • TWAIN data source: A software component written by a hardware vendor to translate between TWAIN commands and device driver commands. Depending on the application, the data source may present a dialog for the user to select settings on the hardware device.

  • Device driver: The driver issues commands it receives from the TWAIN data source to the hardware to acquire an image and to check the status of the device.

  • Still image device: The physical input device, such as a scanner or digital camera.