Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
scanimage(1)		 SANE Scanner Access Now Easy		  scanimage(1)

NAME
       scanimage - scan	an image

SYNOPSIS
       scanimage  [-d  dev] [--format=output-format] [-i profile] [-L] [-f de-
       vice-format] [-b	[format]] [--batch-start=start]	 [--batch-count=count]
       [--batch-increment=increment] [--batch-double] [--accept-md5-only] [-p]
       [-o  path] [-n] [-T] [-A] [-h] [-v] [-B size] [-V] [device-specific-op-
       tions]

DESCRIPTION
       scanimage is a command-line interface to	control	image acquisition  de-
       vices  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 im-
       ages),  TIFF  format (black-and-white, grayscale	or color), PNG format,
       or JPEG format (compression level 75).  scanimage accesses image	acqui-
       sition 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).

EXAMPLES
       To get a	list of	devices:

	 scanimage -L

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

	 scanimage >image.pnm

       To  scan	100x100	mm to the file image.tiff (-x and -y may not be	avail-
       able with all devices):

	 scanimage -x 100 -y 100 --format=tiff >image.tiff

       To print	all available options:

	 scanimage -h

OPTIONS
       There are two sets of options available when running scanimage.

       The options that	are provided by	scanimage itself are listed below.  In
       addition, each backend offers its own set of options and	these can also
       be specified. Note that the options available from the backend may vary
       depending on the	scanning device	that is	selected.

       Often  options  that are	similar	in function may	be implemented differ-
       ently across backends. An example of this difference is --mode Gray and
       --mode Grayscale.  This may be due to differing backend author  prefer-
       ences.	At other times,	options	are defined by the scanning device it-
       self and	therefore out of the control of	the backend code.

       Parameters are separated	by a blank from	single-character options (e.g.
       -d epson) and by	 a  "="	 from  multi-character	options	 (e.g.	 --de-
       vice-name=epson).

       -d dev, --device-name=dev
	      specifies	 the  device  to access	and 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	speci-
	      fied explicitly, scanimage reads a device-name from the environ-
	      ment variable SANE_DEFAULT_DEVICE.  If this variable is not set,
	      scanimage	will attempt to	open the first available device.

       --format=output-format
	      selects how image	data is	written	to standard output or the file
	      specified	 by  the  --output-file	 option.  output-format	can be
	      pnm, tiff, png, or jpeg.	If --format is not specified,  PNM  is
	      written by default.

       -i profile, --icc-profile=profile
	      is used to include an ICC	profile	into a TIFF file.

       -L, --list-devices
	      requests	a  (partial)  list of devices that are available.  The
	      list may not be complete since some devices  may	be  available,
	      but  are not listed in any of the	configuration files (which are
	      typically	stored in directory /usr/local/etc/sane.d).   This  is
	      particularly  the	 case when accessing scanners through the net-
	      work.  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.

       -f format, --formatted-device-list=device-format
	      works similarly to --list-devices, but requires a	format string.
	      scanimage	 replaces  the placeholders %d %v %m %t	%i %n with the
	      device name, vendor name,	model name,  scanner  type,  an	 index
	      number and newline 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 features for scanning documents using doc-
       ument feeders.

	      -b [format], --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,	out%d.png  for
		     --format  png  or	out%d.jpg  for	--format jpeg) will be
		     used.  This option	is incompatible	with the --output-path
		     option.  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 1.

	      --batch-count=count
		     specifies the number of pages to attempt to scan.	If not
		     given, scanimage 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
		     option to work around them.

	      --batch-increment=increment
		     sets the amount that the number in	the filename is	incre-
		     mented by.	 Generally this	is used	when you are  scanning
		     double-sided documents on a single-sided document feeder.
		     --batch-double  is	 a  specific  command  provided	to aid
		     this.

	      --batch-double
		     will automatically	set the	increment to 2.	 Equivalent to
		     --batch-increment=2.

	      --batch-prompt
		     will ask for pressing RETURN before scanning a page. This
		     can be used for scanning multiple pages without an	 auto-
		     matic document feeder.

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

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

       -o path,	--output-file=path
	      requests	that  scanimage	saves the scanning output to the given
	      path.  This option is incompatible with the --batch option.  The
	      program  will  try to guess --format from	the file name. If that
	      is not possible, it will print an	error message and exit.

       -n, --dont-scan
	      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).

       -T, --test
	      requests	that  scanimage	 performs a few	simple sanity tests to
	      make sure	the backend works as defined by	the SANE API. In  par-
	      ticular the sane_read() function is exercised by this test.

       -A, --all-options
	      requests	that  scanimage	lists all available options exposed by
	      the backend,  including  button  options.	  The  information  is
	      printed on standard output and no	scan will be performed.

       -h, --help
	      requests	help information.  The information is printed on stan-
	      dard output and no scan will be performed.

       -v, --verbose
	      increases	the verbosity of the output of scanimage.  The	option
	      may  be specified	repeatedly, each time increasing the verbosity
	      level.

       -B [size], --buffer-size=size
	      changes input buffer size	from the default of 1MB	to size	KB.

       -V, --version
	      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. If more information
	      about the	version	numbers	of the backends	are necessary, the DE-
	      BUG variable for the dll layer can be  used.  Example:  SANE_DE-
	      BUG_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:

       -l 0..218mm [0]
	      Top-left x position of scan area.

	      The  description	above  shows  that option -l expects an	option
	      value in the range from 0	to 218 mm.  The	value in square	brack-
	      ets indicates that the current option value is 0 mm. Most	 back-
	      ends  provide  similar  geometry options for top-left y position
	      (-t), width (-x) and height of scan-area (-y).

       --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
	      percent.

       --default-enhancements
	      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  ap-
	      pears.   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 af-
	      fects 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.

ENVIRONMENT
       SANE_DEFAULT_DEVICE
	      The default device-name.

FILES
       /usr/local/etc/sane.d
	      This directory holds various configuration files.	 For  details,
	      please refer to the manual pages listed below.

       ~/.sane/pass
	      This file	contains lines of the form

	      user:password:resource

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

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

AUTHOR
       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).

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

				  10 Jul 2008			  scanimage(1)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=scanimage&sektion=1&manpath=FreeBSD+14.3-RELEASE+and+Ports>

home | help