>My assumption is the vast majority of consumer scanners out there will support all 3
Really ?
My scanner is an Epson V100 (and there are lots of epson scanners used under linux, due to it's good support) and the sane epson-backend doesn't support line-art (als I've written sane is inconsistent, binary would be the right parameter with epson-scanners to get black&white)
'Just for fun' my output of scanimage -h
Options specific to device `epkowa:interpreter:002:006':
Scan Mode:
--mode Binary|Gray|Color [Color]
Selects the scan mode (e.g., lineart, monochrome, or color).
--depth 8|16 [8]
Number of bits per sample, typical values are 1 for "line-art" and 8
for multibit scans.
--halftoning None|Halftone A (Hard Tone)|Halftone B (Soft Tone)|Halftone C (Net Screen) [inactive]
Selects the halftone.
--dropout None|Red|Green|Blue [inactive]
Selects the dropout.
--brightness 0..0 [inactive]
Selects the brightness.
--sharpness -2..2 [inactive]
--gamma-correction User defined (Gamma=1.0)|User defined (Gamma=1.8) [User defined (Gamma=1.8)]
Selects the gamma correction value from a list of pre-defined devices
or the user defined table, which can be downloaded to the scanner
--color-correction User defined [inactive]
Sets the color correction table for the selected output device.
--resolution 200|400|600|800|1200|1600|3200dpi [200]
Sets the resolution of the scanned image.
--x-resolution 133|200|400|600|800|1200|1600|3200dpi [200]
Sets the horizontal resolution of the scanned image.
--y-resolution 133|200|400|600|800|1200|1600|2400|3200|4800|6400|9600dpi [200]
Sets the vertical resolution of the scanned image.
--threshold 0..255 [inactive]
Select minimum-brightness to get a white point
Advanced:
--mirror[=(yes|no)] [inactive]
Mirror the image.
--speed[=(yes|no)] [no]
Determines the speed at which the scan proceeds.
--auto-area-segmentation[=(yes|no)] [inactive]
--short-resolution[=(yes|no)] [no]
Display short resolution list
--zoom 50..200 [inactive]
Defines the zoom factor the scanner will use
--red-gamma-table 0..255,... Gamma-correction table for the red band.
--green-gamma-table 0..255,... Gamma-correction table for the green band.
--blue-gamma-table 0..255,... Gamma-correction table for the blue band.
--wait-for-button[=(yes|no)] [no]
After sending the scan command, wait until the button on the scanner
is pressed to actually start the scan process.
--monitor-button[=(yes|no)] [no]
Indicates whether a button on the scanner has been pressed (read-only
option).
Color correction coefficients:
--cct-1 -2..2 [1.0878]
Controls red level
--cct-2 -2..2 [-0.0666962]
Adds to red based on green level
--cct-3 -2..2 [-0.0210876]
Adds to red based on blue level
--cct-4 -2..2 [-0.0891876]
Adds to green based on red level
--cct-5 -2..2 [1.15129]
Controls green level
--cct-6 -2..2 [-0.0621948]
Adds to green based on blue level
--cct-7 -2..2 [-0.0653992]
Adds to blue based on red level
--cct-8 -2..2 [-0.517487]
Adds to blue based on green level
--cct-9 -2..2 [1.58289]
Control blue level
Preview:
--preview[=(yes|no)] [no]
Request a preview-quality scan.
--preview-speed[=(yes|no)] [no]
Geometry:
-l 0..215.9mm [0]
Top-left x position of scan area.
-t 0..297.18mm [0]
Top-left y position of scan area.
-x 0..215.9mm [215.9]
Width of scan-area.
-y 0..297.18mm [297.18]
Height of scan-area.
--quick-format CD|A5 portrait|A5 landscape|Letter|A4|Max [Max]
Optional equipment:
--source Flatbed|Transparency Unit [Flatbed]
Selects the scan source (such as a document-feeder).
--auto-eject[=(yes|no)] [inactive]
Eject document after scanning
--film-type Positive Film|Negative Film [inactive]
--focus-position Focus on glass|Focus 2.5mm above glass [inactive]
Sets the focus position to either the glass or 2.5mm above the glass
--bay 1 | 2 | 3 | 4 | 5 | 6 [inactive]
Select bay to scan
--eject [inactive]
Eject the sheet in the ADF
--adf-mode Simplex|Duplex [inactive]
Selects the ADF mode (simplex/duplex)
--detect-doc-size[=(yes|no)] [inactive]
Activates document size auto-detection. The scan area will be set to
match the detected document size.
--scan-area-is-valid[=(yes|no)] [yes] [read-only]
Indicates whether the current scan area settings are valid.
--adf-auto-scan[=(yes|no)] [inactive]
Skips per sheet device setup for faster throughput.
--double-feed-detection-sensitivity None|Low|High [inactive]
Sets the sensitivity with which multi-sheet page feeds are detected
and reported as errors.
--ext-sane-status 0..3.05176e-05 [] [read-only]
Ugly kludge to provide additional status message strings to a
frontend.
--adf-duplex-direction-matches[=(yes|no)] [inactive]
Indicates whether the device's ADF duplex mode, if available, scans in
the same direction for the front and back.
Ah and yes (as you might expect) simple-scan produces colored images if I select text.
>My assumption is the vast majority of consumer scanners out there will support all 3
Really ?
My scanner is an Epson V100 (and there are lots of epson scanners used under linux, due to it's good support) and the sane epson-backend doesn't support line-art (als I've written sane is inconsistent, binary would be the right parameter with epson-scanners to get black&white)
'Just for fun' my output of scanimage -h
Options specific to device `epkowa: interpreter: 002:006' :
Scan Mode:
--mode Binary|Gray|Color [Color]
Selects the scan mode (e.g., lineart, monochrome, or color).
--depth 8|16 [8]
Number of bits per sample, typical values are 1 for "line-art" and 8
for multibit scans.
--halftoning None|Halftone A (Hard Tone)|Halftone B (Soft Tone)|Halftone C (Net Screen) [inactive]
Selects the halftone.
--dropout None|Red|Green|Blue [inactive]
Selects the dropout.
--brightness 0..0 [inactive]
Selects the brightness.
--sharpness -2..2 [inactive]
--gamma- correction User defined (Gamma=1.0)|User defined (Gamma=1.8) [User defined (Gamma=1.8)] correction User defined [inactive] 600|800| 1200|1600| 3200dpi [200] 400|600| 800|1200| 1600|3200dpi [200] 400|600| 800|1200| 1600|2400| 3200|4800| 6400|9600dpi [200] =(yes|no) ] [inactive] =(yes|no) ] [no] area-segmentati on[=(yes| no)] [inactive]
Selects the gamma correction value from a list of pre-defined devices
or the user defined table, which can be downloaded to the scanner
--color-
Sets the color correction table for the selected output device.
--resolution 200|400|
Sets the resolution of the scanned image.
--x-resolution 133|200|
Sets the horizontal resolution of the scanned image.
--y-resolution 133|200|
Sets the vertical resolution of the scanned image.
--threshold 0..255 [inactive]
Select minimum-brightness to get a white point
Advanced:
--mirror[
Mirror the image.
--speed[
Determines the speed at which the scan proceeds.
--auto-
--short- resolution[ =(yes|no) ] [no] gamma-table 0..255,...
Gamma- correction table for the red band. gamma-table 0..255,...
Gamma- correction table for the green band. gamma-table 0..255,...
Gamma- correction table for the blue band. for-button[ =(yes|no) ] [no] button[ =(yes|no) ] [no] =(yes|no) ] [no] speed[= (yes|no) ] [no]
Display short resolution list
--zoom 50..200 [inactive]
Defines the zoom factor the scanner will use
--red-
--green-
--blue-
--wait-
After sending the scan command, wait until the button on the scanner
is pressed to actually start the scan process.
--monitor-
Indicates whether a button on the scanner has been pressed (read-only
option).
Color correction coefficients:
--cct-1 -2..2 [1.0878]
Controls red level
--cct-2 -2..2 [-0.0666962]
Adds to red based on green level
--cct-3 -2..2 [-0.0210876]
Adds to red based on blue level
--cct-4 -2..2 [-0.0891876]
Adds to green based on red level
--cct-5 -2..2 [1.15129]
Controls green level
--cct-6 -2..2 [-0.0621948]
Adds to green based on blue level
--cct-7 -2..2 [-0.0653992]
Adds to blue based on red level
--cct-8 -2..2 [-0.517487]
Adds to blue based on green level
--cct-9 -2..2 [1.58289]
Control blue level
Preview:
--preview[
Request a preview-quality scan.
--preview-
Geometry: Letter| A4|Max [Max]
-l 0..215.9mm [0]
Top-left x position of scan area.
-t 0..297.18mm [0]
Top-left y position of scan area.
-x 0..215.9mm [215.9]
Width of scan-area.
-y 0..297.18mm [297.18]
Height of scan-area.
--quick-format CD|A5 portrait|A5 landscape|
Optional equipment: Transparency Unit [Flatbed] eject[= (yes|no) ] [inactive]
--source Flatbed|
Selects the scan source (such as a document-feeder).
--auto-
Eject document after scanning
--film-type Positive Film|Negative Film [inactive]
--focus- position Focus on glass|Focus 2.5mm above glass [inactive] doc-size[ =(yes|no) ] [inactive] area-is- valid[= (yes|no) ] [yes] [read-only] auto-scan[ =(yes|no) ] [inactive] feed-detection- sensitivity None|Low|High [inactive] sane-status 0..3.05176e-05 [] [read-only] duplex- direction- matches[ =(yes|no) ] [inactive]
Sets the focus position to either the glass or 2.5mm above the glass
--bay 1 | 2 | 3 | 4 | 5 | 6 [inactive]
Select bay to scan
--eject [inactive]
Eject the sheet in the ADF
--adf-mode Simplex|Duplex [inactive]
Selects the ADF mode (simplex/duplex)
--detect-
Activates document size auto-detection. The scan area will be set to
match the detected document size.
--scan-
Indicates whether the current scan area settings are valid.
--adf-
Skips per sheet device setup for faster throughput.
--double-
Sets the sensitivity with which multi-sheet page feeds are detected
and reported as errors.
--ext-
Ugly kludge to provide additional status message strings to a
frontend.
--adf-
Indicates whether the device's ADF duplex mode, if available, scans in
the same direction for the front and back.
Ah and yes (as you might expect) simple-scan produces colored images if I select text.