scanimage manpage

Search topic Section

scanimage(1)		 SANE Scanner Access Now Easy		  scanimage(1)

       scanimage - scan an image

       scanimage  [-d|--device-name  dev]  [--format format] [-i|--icc-profile
       profile]	  [-L|--list-devices]	[-f|--formatted-device-list    format]
       [--batch	  [=format]]   [--batch-start	start]	[--batch-count	count]
       [--batch-increment  increment]	[--batch-double]   [--accept-md5-only]
       [-p|--progress] [-n|--dont-scan] [-T|--test] [-h|--help] [-v|--verbose]
       [-B|--buffersize] [-V|--version] [device-specific-options]

       scanimage is a command-line  interface  to  control  image  acquisition
       devices	such as flatbed scanners or cameras.  The device is controlled
       via command-line options.   After  command-line	processing,  scanimage
       normally	 proceeds  to  acquire an image.  The image data is written to
       standard output in one of the PNM (portable aNyMaP)  formats  (PBM  for
       black-and-white	images,	 PGM  for  grayscale images, and PPM for color
       images) or in TIFF (black-and-white, grayscale  or  color).   scanimage
       accesses image acquisition devices through the SANE (Scanner Access Now
       Easy) interface and can thus support any device for which there	exists
       a SANE backend (try apropos sane- to get a list of available backends).

       To get a list of devices:

	 scanimage -L

       To scan with default settings to the file image.pnm:

	 scanimage >image.pnm

       To print all available options:

	 scanimage -h

       The  -d or --device-name options must be followed by a SANE device-name
       like `epson:/dev/sg0' or `hp:/dev/usbscanner0'.	A  (partial)  list  of
       available  devices  can be obtained with the --list-devices option (see
       below).	If no device-name is specified explicitly, scanimage  reads  a
       device-name from the environment variable SANE_DEFAULT_DEVICE.  If this
       variable is not set, scanimage will attempt to open the first available

       The  --format  format option selects how image data is written to stan-
       dard output.  format can be pnm or tiff.	 If --format is not used,  PNM
       is written.

       The -i or --icc-profile option is used to include an ICC profile into a
       TIFF file.

       The -L or --list-devices option requests a (partial)  list  of  devices
       that are available.  The list is not complete since some devices may be
       available, but are not listed in any of the configuration files	(which
       are  typically  stored in directory /etc/sane.d).  This is particularly
       the case when accessing scanners through the network.  If a  device  is
       not listed in a configuration file, the only way to access it is by its
       full device name.  You may need to consult your system administrator to
       find out the names of such devices.

       The  -f	or  --formatted-device-list  option  works  similar to --list-
       devices, but requires a format string.  scanimage replaces  the	place-
       holders	%d  %v %m %t %i with the device name, vendor name, model name,
       scanner type and an index number respectively. The command

	      scanimage -f " scanner number %i device %d is a  %t,  model  %m,
	      produced by %v "

       will produce something like:

	      scanner  number 0	 device sharp:/dev/sg1 is  a  flatbed scanner,
	      model JX250 SCSI, produced by SHARP

       The --batch* options provide the features for scanning documents	 using
       document	 feeders.   --batch  [format] is used to specify the format of
       the filename that each page will be written to.	Each page  is  written
       out  to	a  single  file.   If  format is not specified, the default of
       out%d.pnm (or out%d.tif for --format tiff) will	be  used.   format  is
       given  as  a  printf style string with one integer parameter.  --batch-
       start start selects the page number to start naming files with. If this
       option  is not given, the counter will start at 0.  --batch-count count
       specifies the number of pages to attempt to scan.  If not given,	 scan-
       image  will  continue  scanning until the scanner returns a state other
       than OK.	 Not all scanners with document feeders signal when the ADF is
       empty,  use  this  command to work around them.	With --batch-increment
       increment you can change the amount that the number in the filename  is
       incremented  by.	  Generally this is used when you are scanning double-
       sided documents on a single-sided document feeder.  A specific  command
       is  provided  to	 aid  this:  --batch-double will automatically set the
       increment to 2.	--batch-prompt will ask	 for  pressing	RETURN	before
       scanning	 a  page. This can be used for scanning multiple pages without
       an automatic document feeder.

       The --accept-md5-only option only accepts user  authorization  requests
       that  support  MD5 security. The SANE network daemon (saned) is capable
       of doing such requests. See saned(8).

       The -p or --progress option requests that scanimage prints  a  progress
       counter.	 It shows how much image data of the current image has already
       been received by scanimage (in percent).

       The -n or --dont-scan option requests  that  scanimage  only  sets  the
       options	provided by the user but doesn't actually perform a scan. This
       option can be used to e.g. turn off the scanner's lamp (if supported by
       the backend).

       The  -T	or --test option requests that scanimage performs a few simple
       sanity tests to make sure the backend works as defined by the SANE  API
       (in particular the sane_read function is exercised by this test).

       The  -h or --help options request help information.  The information is
       printed on standard output and in this case, no attempt will be made to
       acquire an image.

       The  -v or --verbose options increase the verbosity of the operation of
       scanimage.  The option may be specified repeatedly, each time  increas-
       ing the verbosity level.

       The -B or --buffersize option changes the input buffersize that scanim-
       age uses from default 32*1024 to 1024*1024 kbytes.

       The -V or --version option requests that scanimage prints  the  program
       and  package  name, the version number of the SANE distribution that it
       came with and the version of the backend that it loads. Usually	that's
       the  dll	 backend. If more information about the version numbers of the
       backends are necessary, the DEBUG variable for the dll backend  can  be
       used. Example: SANE_DEBUG_DLL=3 scanimage -L.

       As  you	might  imagine,	 much of the power of scanimage comes from the
       fact that it can control any SANE backend.  Thus, the exact set of com-
       mand-line  options  depends on the capabilities of the selected device.
       To see the options for a device named dev, invoke scanimage via a  com-
       mand-line of the form:

	      scanimage --help --device-name dev

       The  documentation for the device-specific options printed by --help is
       best explained with a few examples:

	--brightness -100..100% [0]
	   Controls the brightness of the acquired image.

	      The description above shows that option --brightness expects  an
	      option  value  in the range from -100 to 100 percent.  The value
	      in square brackets indicates that the current option value is  0

	   Set default values for enhancement controls.

	      The  description	above shows that option --default-enhancements
	      has no option value.  It should be thought of as having an imme-
	      diate  effect  at	 the  point  of	 the  command-line at which it
	      appears.	For example, since this option resets the --brightness
	      option,  the  option-pair --brightness 50 --default-enhancements
	      would effectively be a no-op.

	--mode Lineart|Gray|Color [Gray]
	   Selects the scan mode (e.g., lineart or color).

	      The description above shows that option --mode accepts an	 argu-
	      ment  that  must	be one of the strings Lineart, Gray, or Color.
	      The value in the square bracket indicates	 that  the  option  is
	      currently set to Gray.  For convenience, it is legal to abbrevi-
	      ate the string values as long as they remain unique.  Also,  the
	      case  of	the spelling doesn't matter.  For example, option set-
	      ting --mode col is identical to --mode Color.

	--custom-gamma[=(yes|no)] [inactive]
	   Determines whether a builtin or a custom gamma-table
	   should be used.

	      The description above shows that option  --custom-gamma  expects
	      either no option value, a "yes" string, or a "no" string.	 Spec-
	      ifying the option with no	 value	is  equivalent	to  specifying
	      "yes".   The  value in square-brackets indicates that the option
	      is not currently active.	That is, attempting to set the	option
	      would  result in an error message.  The set of available options
	      typically depends on the settings of other options.   For	 exam-
	      ple,  the	 --custom-gamma	 table	might  be  active  only when a
	      grayscale or color scan-mode has been requested.

	      Note that the --help option is processed only  after  all	 other
	      options  have been processed.  This makes it possible to see the
	      option settings for a particular mode by specifying  the	appro-
	      priate  mode-options along with the --help option.  For example,
	      the command-line:

	      scanimage --help --mode color

	      would print the option settings that  are	 in  effect  when  the
	      color-mode is selected.

	--gamma-table 0..255,...
	   Gamma-correction table.  In color mode this option
	   equally affects the red, green, and blue channels
	   simultaneously (i.e., it is an intensity gamma table).

	      The  description	above  shows that option --gamma-table expects
	      zero or more values in the range 0 to 255.  For example, a legal
	      value  for this option would be "3,4,5,6,7,8,9,10,11,12".	 Since
	      it's cumbersome to specify long vectors in this form,  the  same
	      can  be  expressed  by  the abbreviated form "[0]3-[9]12".  What
	      this means is that the first vector element is  set  to  3,  the
	      9-th element is set to 12 and the values in between are interpo-
	      lated linearly.  Of course, it is possible to  specify  multiple
	      such  linear segments.  For example, "[0]3-[2]3-[6]7,[7]10-[9]6"
	      is   equivalent	to   "3,3,3,4,5,6,7,10,8,6".	The    program
	      gamma4scanimage  can  be used to generate such gamma tables (see
	      gamma4scanimage(1) for details).

	--filename <string> [/tmp/input.ppm]
	   The filename of the image to be loaded.

	      The description above is an example of an option that  takes  an
	      arbitrary string value (which happens to be a filename).	Again,
	      the value in brackets show that the option is current set to the
	      filename /tmp/input.ppm.

	      The default device-name.

	      This  directory holds various configuration files.  For details,
	      please refer to the manual pages listed below.

	      This file contains lines of the form


	      scanimage uses this information  to  answer  user	 authorization
	      requests	automatically.	The file must have 0600 permissions or
	      stricter. You should use	this  file  in	conjunction  with  the
	      --accept-md5-only	 option	 to  avoid  server-side	 attacks.  The
	      resource may contain any character but is limited to 127 charac-

       sane(7),	   gamma4scanimage(1),	 xscanimage(1),	  xcam(1),   xsane(1),
       scanadf(1), sane-dll(5), sane-net(5), sane-"backendname"(5)

       David Mosberger, Andreas Beck, Gordon Matzigkeit, Caskey	 Dickson,  and
       many  others.   For questions and comments contact the sane-devel mail-
       inglist (see http://www.sane-project.org/mailing-lists.html).

       For vector options, the help output currently has no indication	as  to
       how many elements a vector-value should have.

sane-backends 1.0.18		  23 Sep 2005			  scanimage(1)