kopia lustrzana https://gitlab.com/sane-project/website
352 wiersze
17 KiB
HTML
352 wiersze
17 KiB
HTML
<HTML>
|
|
<HEAD>
|
|
<TITLE>sane-sharp.5</TITLE>
|
|
</HEAD>
|
|
<BODY BGCOLOR=#FFFFFF TEXT=#000000><H1 ALIGN=CENTER><IMG SRC="/images/sane.png" HEIGHT=117 WIDTH=346></H1>
|
|
<H1>sane-sharp.5</H1>
|
|
<HR>
|
|
<PRE>
|
|
<!-- Manpage converted by man2html 3.0.1 -->
|
|
<B><A HREF="sane-sharp.5.html">sane-sharp(5)</A></B> SANE Scanner Access Now Easy <B><A HREF="sane-sharp.5.html">sane-sharp(5)</A></B>
|
|
|
|
|
|
</PRE>
|
|
<H2>NAME</H2><PRE>
|
|
sane-sharp - SANE backend for SHARP scanners
|
|
|
|
|
|
</PRE>
|
|
<H2>DESCRIPTION</H2><PRE>
|
|
The <B>sane-sharp</B> library implements a SANE (Scanner Access Now Easy)
|
|
backend that provides access to Sharp SCSI scanners. This backend
|
|
should be considered <B>beta-quality</B> software! In the current state it is
|
|
known to work with JX-610 and JX-250 scanners. It is prepared for usage
|
|
with the JX-330 series scanners, but we are not able to test it with
|
|
these devices.
|
|
|
|
For other Sharp scanners, it may or may not work.
|
|
|
|
At present, the following scanners are known to work with this backend.
|
|
|
|
Vendor Product id:
|
|
----- -----------
|
|
Sharp JX-610
|
|
Sharp JX-250
|
|
Sharp JX-320
|
|
Sharp JX-330
|
|
Sharp JX-350
|
|
|
|
The following scanners are detected by the backend, but not tested:
|
|
|
|
Vendor Product id:
|
|
----- -----------
|
|
Sharp JX-325
|
|
|
|
|
|
</PRE>
|
|
<H2>DEVICE NAMES</H2><PRE>
|
|
This backend expects device names of the form:
|
|
|
|
<I>special</I>
|
|
|
|
where <I>special</I> is the path-name for the special device that corresponds
|
|
to a SCSI scanner. The special device name must be a generic SCSI
|
|
device or a symlink to such a device. Under Linux, such a device name
|
|
could be <I>/dev/sga</I> or <I>/dev/sge</I>, for example. See <B><A HREF="sane-scsi.5.html">sane-scsi(5)</A></B> for
|
|
details.
|
|
|
|
|
|
</PRE>
|
|
<H2>SCAN OPTIONS</H2><PRE>
|
|
<B>--mode</B> Scan Mode. Possible settings are: <I>Lineart</I> (1 bit black & white
|
|
scans), <I>Gray</I> (8 bit gray scale scans), <I>Lineart</I> <I>Color</I> (bi-level
|
|
color scans), and <I>Color</I> (8 bit RGB scans). The default value is
|
|
<I>Color.</I>
|
|
|
|
<B>--halftone-pattern</B>
|
|
Halftone Pattern. Available only for the JX-330 series scanners.
|
|
Possible settings: <I>none</I>, <I>Dither</I> <I>Bayer</I>, <I>Dither</I> <I>Spiral</I>, <I>Dither</I>
|
|
<I>Dispersed</I> and <I>Error</I> <I>Diffusion</I>. The default value is <I>none</I>.
|
|
|
|
<B>--source</B>
|
|
Paper Source. This option is only available if an automatic doc-
|
|
ument feeder or a transparency adapter is installed. Possible
|
|
settings are: <I>Flatbed</I>, <I>Automatic</I> <I>Document</I> <I>Feeder</I>, and <I>Trans-</I>
|
|
<I>parency</I> <I>Adapter</I>. If an ADF or a transparency adapter is
|
|
installed, using it is the default selection.
|
|
|
|
<B>--custom-gamma</B>
|
|
Custom Gamma This option determines whether a builtin or a cus-
|
|
tom gamma table is used. Possible settings are: <I>yes</I> (enables
|
|
custom gamma tables) or <I>no</I> (enables a built gamma table).
|
|
|
|
<B>--gamma</B>
|
|
Gamma. This option is only available if <B>Custom</B> <B>Gamma</B> is set to
|
|
<I>no</I>. Possible values are: <I>1.0</I> or <I>2.2</I>. The default value is <I>2.2</I>.
|
|
(The JX-250 and JX-350 have no built in gamma correction; for
|
|
these scanners, a gamma table is downloaded to the scanner by
|
|
the backend.)
|
|
|
|
<B>--gamma-table</B>
|
|
Gamma Table. Allowed values: 0..255; 256 numbers must be
|
|
defined. The default values are 0, 1, 2, .. 255 (i.e., gamma ==
|
|
1). This table is only used for gray scale scans.
|
|
|
|
<B>--red-gamma-table</B>
|
|
Red Gamma Table. Allowed values: 0..255; 256 numbers must be
|
|
defined. The default values are 0, 1, 2, .. 255 (i.e., gamma ==
|
|
1).
|
|
|
|
<B>--green-gamma-table</B>
|
|
Green Gamma Table. Allowed values: 0..255; 256 numbers must be
|
|
defined. The default values are 0, 1, 2, .. 255 (i.e., gamma ==
|
|
1).
|
|
|
|
<B>--blue-gamma-table</B>
|
|
Blue Gamma Table. Allowed values: 0..255; 256 numbers must be
|
|
defined. The default values are 0, 1, 2, .. 255 (i.e., gamma ==
|
|
1).
|
|
|
|
<B>--resolution</B>
|
|
Selects the resolution of the scanned image. Allowed values:
|
|
<I>30..600</I> (JX-330, JX-350 and JX-610) and <I>30..400</I> (JX-250). The
|
|
default value is 150.
|
|
|
|
<B>-l</B>, <B>-t</B>, <B>-x</B>, <B>-y</B>
|
|
Scan Window. Top-left x position of scan area (<B>-l</B>), top-left y
|
|
position of scan area (<B>-t</B>), bottom right x position of scan area
|
|
(<B>-x</B>) and bottom right y position of scan area (<B>-y</B>). The possi-
|
|
ble settings depend on the scanner model and, for the JX-250 and
|
|
the JX-350, also on the usage of the automatic document feeder
|
|
resp. the transparency adapter. Please refer to the values
|
|
allowed by <B><A HREF="xscanimage.1.html">xscanimage(1)</A></B>, or <B><A HREF="xsane.1.html">xsane(1)</A></B>. With <B><A HREF="scanimage.1.html">scanimage(1)</A></B>, enter
|
|
one of the following commands in order to see the allowed param-
|
|
eter values for the scan window:
|
|
|
|
scanimage -d sharp --source "Automatic Document Feeder" --help
|
|
|
|
scanimage -d sharp --source Flatbed --help
|
|
|
|
scanimage -d sharp --source "Transparency Adapter" --help
|
|
|
|
<B>--edge</B> <B>emphasis</B>
|
|
Edge emphasis. This option is not available for the JX-250 and
|
|
the JX-350. Possible settings: <I>None</I>, <I>Middle</I>, <I>Strong</I>, and <I>Blur</I>.
|
|
The default value is <I>None</I>.
|
|
|
|
<B>--threshold</B>
|
|
Sets the threshold for black and white pixels in lineart mode.
|
|
Possible values are 1..255. The default value is 128. This
|
|
option is only available in scan mode <I>lineart</I>.
|
|
|
|
<B>--threshold-red</B>
|
|
Sets the threshold for the red component of a pixel in in lin-
|
|
eart color scan mode. Possible values are 1..255. The default
|
|
value is 128. This option is only available in scan mode color
|
|
<I>lineart</I>.
|
|
|
|
<B>--threshold-green</B>
|
|
Sets the threshold for the green component of a pixel in in lin-
|
|
eart color scan mode. Possible values are 1..255. The default
|
|
value is 128. This option is only available in scan mode color
|
|
<I>lineart</I> <I>.</I>
|
|
|
|
<B>--threshold-blue</B>
|
|
Sets the threshold for the blue component of a pixel in in lin-
|
|
eart color scan mode. Possible values are 1..255. The default
|
|
value is 128. This option is only available in scan mode color
|
|
<I>lineart</I>.
|
|
|
|
<B>--lightcolor</B>
|
|
Sets the color of the light source. Possible values are <I>white</I>,
|
|
<I>red</I>, <I>green</I> and <I>blue</I>. The default value is <I>white</I>. This option
|
|
is only available in scan modes <I>lineart</I> <I>color</I> and <I>color</I>.
|
|
|
|
|
|
</PRE>
|
|
<H2>ADF USAGE</H2><PRE>
|
|
If a paper jam occurrs, the maintenance cover <I>must</I> be opened and
|
|
closed, even if the jammed paper can be removed without opening the
|
|
maintenance cover. Otherwise, the error condition will not be cleared.
|
|
|
|
|
|
</PRE>
|
|
<H2>CONFIGURATION</H2><PRE>
|
|
The contents of the <I>sharp.conf</I> file is a list of options and device
|
|
names that correspond to Sharp scanners. Empty lines and lines begin-
|
|
ning with a hash mark (#) are ignored. See <B><A HREF="sane-scsi.5.html">sane-scsi(5)</A></B> for details
|
|
about device names.
|
|
|
|
Lines setting an option start with the key word <B>option,</B> followed by the
|
|
option's name and the option's value. At present, three options are
|
|
defined: <B>buffers,</B> <B>buffersize,</B> and <B>readqueue.</B>
|
|
|
|
Options defined at the start of <I>sharp.conf</I> apply to all devices;
|
|
options defined after a device name apply to this device.
|
|
|
|
The options <B>buffers</B> and <B>readqueue</B> are only significant if the backend
|
|
has been compiled so that for each scan a second process is forked
|
|
(switch <B>USE_FORK</B> in <I>sharp.c</I> ). This process reads the scan data from
|
|
the scanner and writes this data into a block of shared memory. The
|
|
parent process reads the data from this memory block and delivers it to
|
|
the frontend. The options control the size and usage of this shared
|
|
memory block.
|
|
|
|
<B>option</B> <B>buffers</B> defines the number of buffers used. The smallest number
|
|
allowed is 2.
|
|
|
|
<B>option</B> <B>buffersize</B> defines the size of one buffer. Since each buffer is
|
|
filled with a single read command sent to the scanner, its size is lim-
|
|
ited automatically to the size allowed by the operating system or by
|
|
the Sane SCSI library for SCSI read commands. A buffer size of 128 kB
|
|
or 256 kB is recommended for scan resolutions of 300 dpi and above.
|
|
|
|
<B>option</B> <B>readqueue</B> defines how many read commands to be sent to the scan-
|
|
ner are queued. At present, the Sane SCSI library supports queued read
|
|
commands only for for Linux. For other operating systems, <B>option</B> <B>read-</B>
|
|
<B>queue</B> should be set to 0. For Linux, <B>option</B> <B>readqueue</B> should be set to
|
|
2. Larger values than 2 for <B>option</B> <B>readqueue</B> are not reasonable in most
|
|
cases. <B>option</B> <B>buffers</B> should be greater than <B>option</B> <B>readqueue.</B>
|
|
|
|
|
|
</PRE>
|
|
<H2>Performance Considerations</H2><PRE>
|
|
This section focuses on the problem of stops of the scanner's carriage
|
|
during a scan. Carriage stops happen mainly with the JX-250. This scan-
|
|
ner has obviously only a small internal buffer compared to its speed.
|
|
That means that the backend must read the data as fast as possible from
|
|
the scanner in order to avoid carriage stops.
|
|
|
|
Even the JX-250 needs only less than 10 seconds for a 400 dpi A4 gray
|
|
scale scan, which results in a data transfer rate of more than 1.6 MB
|
|
per second. This means that the data produced by the scanner must be
|
|
processed fairly fast. Due to the small internal buffer of the JX-250,
|
|
the backend must issue a read request for the next data block as soon
|
|
as possible after reading a block of data in order to avoid carriage
|
|
stops.
|
|
|
|
Stops of the carriage can be caused by the following reasons:
|
|
|
|
- too much "traffic" on the SCSI bus
|
|
- slow responses by the backend to the scanner,
|
|
- a program which processes the data acquired by the backend too
|
|
slow.
|
|
|
|
Too much "traffic" on the SCSI bus: This happens for example, if hard
|
|
disks are connected to the same SCSI bus as the scanner, and when data
|
|
transfer from/to these hard disks requires a considerable part of the
|
|
SCSI bandwidth during a scan. If this is the case, you should consider
|
|
to connect the scanner to a separate SCSI adapter.
|
|
|
|
Slow responses by the backend to the scanner: Unfortunately, UNIX-like
|
|
operating systems generally have no real time capabilities. Thus there
|
|
is no guarantee that the backend is under any circumstances able to
|
|
communicate with the scanner as fast as required. To minimize this
|
|
problem, the backend should be compiled so that a separate reader
|
|
process is forked: Make sure that <B>USE_FORK</B> is defined when you compile
|
|
<I>sharp.c.</I> If slow responses of the backend remain to be problem, you
|
|
could try to reduce the load of the system. Even while the backend and
|
|
the reader process need only a minor amount of processor time, other
|
|
running processes can cause an increase in the time delay between two
|
|
time slices given to the reader process. On slower systems, such an
|
|
increased delay can be enough to cause a carriage stop with the JX-250.
|
|
For Linux, the usage of the SG driver version 2.1.36 or above is recom-
|
|
mended, because it supports, in combination with the SCSI library of
|
|
Sane version 1.0.2, command queueing within the kernel. This queueing
|
|
implementation, combined with a buffer size of at least 128 kB, should
|
|
avoid most carriage stops.
|
|
|
|
Slow processing of the scan data: An example for this situation is the
|
|
access to the scanner via a 10 MBit Ethernet, which is definitely too
|
|
slow to transfer the scan data as fast as they are produced by the
|
|
scanner. If you have enough memory available, you can increase <B>option</B>
|
|
<B>buffers,</B> so that an entire image can be stored in these buffers.
|
|
|
|
In order to see, if the backend is too slow or if the further process-
|
|
ing of the data is too slow, set the environment variable
|
|
<B>SANE_DEBUG_SHARP</B> to 1. When a scan is finished, the backend writes the
|
|
line "buffer full conditions: <I>nn</I>" to stderr. If <I>nn</I> is zero, carriage
|
|
stops are caused by too slow responses of the backend or too much
|
|
"traffic" on the SCSI bus. If <I>nn</I> is greater than zero, the backend had
|
|
to wait <I>nn</I> times until a buffer has been processed by the frontend.
|
|
(Please note that <B>option</B> <B>buffers</B> must be greater than <B>option</B> <B>readqueue</B>
|
|
in order to get useful output for "buffer full conditions".)
|
|
|
|
|
|
</PRE>
|
|
<H2>FILES</H2><PRE>
|
|
<I>/usr/local/etc/sane.d/sharp.conf</I>
|
|
The backend configuration file.
|
|
|
|
<I>/usr/local/lib/sane/libsane-sharp.a</I>
|
|
The static library implementing this backend.
|
|
|
|
<I>/usr/local/lib/sane/libsane-sharp.so</I>
|
|
The shared library implementing this backend (present on systems
|
|
that support dynamic loading).
|
|
|
|
|
|
</PRE>
|
|
<H2>ENVIRONMENT</H2><PRE>
|
|
<B>SANE_DEBUG_SHARP</B>
|
|
If the library was compiled with debug support enabled, this
|
|
environment variable controls the debug level for this backend.
|
|
E.g., a value of 128 requests all debug output to be printed.
|
|
Smaller levels reduce verbosity.
|
|
|
|
|
|
</PRE>
|
|
<H2>KNOWN PROBLEMS</H2><PRE>
|
|
1. ADF Mode
|
|
After several ADF scans, the scanner moves the carriage back to
|
|
the idle position and back to ADF scan position, before a scan
|
|
starts. We do not know, if this is a problem of the scanner, or
|
|
if this is a bug of the backend. At present, the scanner must
|
|
power off and on to stop this annoying behaviour.
|
|
|
|
2. Threshold level does not work (only JX-610)
|
|
|
|
3. The maximum resolution is limited to 600 dpi(JX-610 supported to
|
|
1200 dpi) resp. 400 dpi (JX-250)
|
|
|
|
4. If the JX250 is used with an ADF, the following situation can occur:
|
|
After several scans, the scanner moves, after loading a new sheet of
|
|
paper, the carriage to the idle position, and then back to the position
|
|
used for ADF scans. This happens for <I>every</I> scan, in contrast to the
|
|
calibration, which is done after 10 scans. (For the calibration, the
|
|
carriage is also moved to the idle position.) We do not know if this
|
|
behavior is caused by the backend, or if it is a bug in the firmware of
|
|
the scanner.
|
|
|
|
5. Usage of a transparency adapter (film scan unit) is supported, but
|
|
not tested.
|
|
|
|
|
|
</PRE>
|
|
<H2>SEE ALSO</H2><PRE>
|
|
<B><A HREF="sane.7.html">sane(7)</A></B>, <B><A HREF="sane-scsi.5.html">sane-scsi(5)</A></B>
|
|
|
|
|
|
</PRE>
|
|
<H2>AUTHORS</H2><PRE>
|
|
Kazuya Fukuda, Abel Deuring
|
|
|
|
|
|
</PRE>
|
|
<H2>CREDITS</H2><PRE>
|
|
The Sharp backend is based on the Canon backend written by Helmut Koe-
|
|
berle
|
|
|
|
Parts of this man page are a plain copy of <B><A HREF="sane-mustek.5.html">sane-mustek(5)</A></B> by David Mos-
|
|
berger-Tang, Andreas Czechanowski and Andreas Bolsch
|
|
|
|
11 Jul 2008 <B><A HREF="sane-sharp.5.html">sane-sharp(5)</A></B>
|
|
</PRE>
|
|
<HR>
|
|
<ADDRESS>
|
|
Man(1) output converted with
|
|
<a href="http://www.oac.uci.edu/indiv/ehood/man2html.html">man2html</a>
|
|
</ADDRESS>
|
|
</BODY>
|
|
</HTML>
|