sane-pint(5)


sane-pint -- SANE backend for scanners that use the PINT device driver

Description

sane-pint 5 implements a SANE (Scanner Access Now Easy) backend that provides generic access to handheld and flatbed scanners using the PINT device driver.

PINT is designed to provide an ioctl(2) interface to many different scanner types. However, this backend has only been tested with flatbed single-pass scanners.

This backend expects device names of the form:

special

where special is the path-name for the special device that corresponds to the scanner. The special device name must be a PINT device or a symbolic link to such a device.

pint.conf contains a list of device names that correspond to PINT scanners. Empty lines and lines starting with a hash (``#'') are ignored. A sample configuration file is shown below:

   /dev/scanner
   # this is a comment
   /dev/ss1

The SANE_CONFIG_DIR environment variable specifies the list of directories that may contain the configuration file. The directories are separated by a colon (``:''). If this variable is not set, the configuration file is searched in two default directories: firstly, the current working directory (``.'') and then in /usr/local/etc/sane.d. If the value of the environment variable ends with the directory separator character, then the default directories are searched after the explicitly specified directories. For example, setting SANE_CONFIG_DIR to ``/tmp/config:'' would result in directories tmp/config, ``.'', and /usr/local/etc/sane.d being searched (in this order).

The SANE_DEBUG_PINT environment variable controls the debug level for this backend if the library was compiled with debug support enabled. For example, a value of 128 requests all debug output to be printed. Smaller levels reduce verbosity.

Files


/usr/local/etc/sane.d/pint.conf
The backend configuration file (see also description of SANE_CONFIG_DIR).

/usr/local/lib/sane/libsane-pint.a
The static library implementing this backend.

/usr/local/lib/sane/libsane-pint.so
The shared library implementing this backend (present on systems that support dynamic loading).

Notices

There are minor round off errors when adjusting the ranges, since PINT uses units of 1/1200 of an inch, and SANE normally uses millimeters. Symptoms of these errors are skewed images. Use inches as the scanning unit, and the scanner works correctly.

The PINT 0.5e interface does not provide a way to determine valid ranges for DPI, modes, and scan sizes. The SANE backend queries the PINT device, and dynamically discovers valid ranges by doing a binary search. This means that the driver takes longer to initialize than seems necessary.

Resetting the scanner does not seem to work. For that reason, the driver sends a SCIOCRESTART, then uses any remaining input until it reaches the end of the file (EOF).

Not all of the scanners have been identified as flatbed or handheld scanners.

X and Y resolutions are assumed to be the same.

No testing has been done on three-pass or handheld scanners, or with Automatic Document Feeder support.

Author is Gordon Matzigkeit.

References

sane-abaton(5), sane-agfafocus(5), sane-apple(5), saned(1), sane-dc25(5), sane-dll(5), sane-dmc(5), sane-epson(5), sane-hp(5), sane-microtek(5), sane-microtek2(5), sane-mustek(5), sane-net(5), sane-pnm(5), sane-umax(5), scanimage(1), xsane(1), xscanimage(1)
© 2004 The SCO Group, Inc. All rights reserved.
UnixWare 7 Release 7.1.4 - 25 April 2004