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]
       [-b|--batch  [=format]]  [--batch-start  start]  [--batch-count  count]
       [--batch-increment  increment]   [--batch-double]   [--accept-md5-only]
       [-p|--progress]    [-o|--output-file]    [-n|--dont-scan]   [-T|--test]
       [-A|--all-options]   [-h|--help]    [-v|--verbose]    [-B|--buffer-size
       [=size]] [-V|--version] [device-specific-options]

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

       Remark: Parameter are defined by the backends. So are --mode  Gray  and
       --mode Grayscale in use.  Please read the backend documentation first.

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

       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 or the file specified by the --output-file option.   format
       can  be  pnm, tiff, png, or jpeg.  If --format is not specified, PNM is
       written by default.

       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 @CONFIGDIR@).  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-de-
       vices, but requires a format string.  scanimage replaces the placehold-
       ers %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 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, out%d.png for --format png
       or out%d.jpg for -- format jpeg) will be used.  This option  is  incom-
       patible  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 con-
       tinue 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  docu-
       ments  on  a  single-sided document feeder.  A specific command is pro-
       vided 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  -o or --output-file option requests that scanimage saves the scan-
       ning 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

       The  -n or --dont-scan option requests that scanimage only sets the op-
       tions 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 -A or --all-options option requests that scanimage lists all avail-
       able options exposed the backend, including button options.  The infor-
       mation is printed on standard output and no scan will be done.

       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 option without argument changes the input buffer size  from  the
       default  32KB  to  1MB.   For finer grained control, use --buffer-size=
       followed by the number of KB.

       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:

        -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

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

       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

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

@PACKAGEVERSION@                  10 Jul 2008                     scanimage(1)
Man Pages Copyright Respective Owners. Site Copyright (C) 1994 - 2024 Hurricane Electric. All Rights Reserved.