SANE stands
for Scanner Access Now Easy. It provides access to scanners, mostly flatbed
scanners, but it can also provide access to digital cameras. Last November
it turned five, so it has been around for some time. It's not meant to run
on Linux only, but also on almost every other Unix or Unix clone. Other supported
operating systems include BeOS and OS/2, maybe even Mac OS X.
SANE actually consists of two parts, backend and frontend.
The part you definitely need is 'sane-backends', which contains the drivers
for different scanner models. It also provides the libraries the various
frontends require to work properly. The standard frontends for SANE are 'Scanimage'
and 'Xscanimage'.
In Mandrake Linux, 'scanimage' is part of the 'sane-backends' package, whereas
'xscanimage' belongs to 'sane-frontends'.
Twain or SANE
Twain and SANE are not the same.
When you buy a scanner, you'll usually find some notice on the box that the
scanner is 'Twain compatible'. This just means the included Windows or Mac
OS drivers include features and an architecture compatible with the Twain
standard. Applications with interfaces compatible to that standard can communicate
with the driver via its Twain part.
SANE, on the other hand, separates driver and interface, thus allowing for
e.g. scanning via a network.
Work has been started to let Twain and SANE work together, but that will
take some time.
section index top
There are various frontends for SANE you can choose from.
-
'scanimage' is a commandline frontend. It is useful
for testing SANE, in case you have troubles or you are doing development.
It's also useful if you want to access your scanner from scripts. 'scanimage'
is part of the Mandrake Linux 'sane-backends' package.
-
'xscanimage' is a graphical frontend (GTK) but mostly
you will just want to use XSane, which is a very good and featured replacement
of 'xscanimage'. 'xscanimage' is part of the Mandrake Linux 'sane-frontends'
package.
-
With XSane,
you can save, copy (print), fax, OCR and mail documents. You can do previews
before the actual scan. Every few weeks there is a new version released which
has new features and bug-fixes. XSane is available in Mandrake Linux as a
package of the same name. Both XSane and xscanimage also work as GIMP plug-ins
('File' - 'Acquire').
-
There's a KDE frontend, 'Kooka', which uses the
library 'kscan'. It's now included in most Linux distributions and in Mandrake
Linux in the package 'kdegraphics'.
-
QuiteInsane
is a graphical frontend which uses Qt. It's quite nice actually, just check
it out. Other frontends include FIScan, scanlite
and VueScan(proprietary).
Another interesting "frontend" is 'saned', a network
daemon. You can attach the scanner to a server, and then use one of the frontends
on a client to connect to it. You still have to change the documents to be
scanned manually, so make sure you have the scanner standing nearby (or find
someone else to do it for you ;-)). There's a Windows version of XSane, which
you can use to connect to that scanner server.
'saned' is part of the Mandrake Linux 'sane-backends' package.
section index top
OCR stands for Optical Character Recognition. In short,
it is a method to recognize the characters from a scanned image. Using OCR,
you can scan a document, turn the characters on the scanned image into text
again, which you can edit in your favorite text editor or word processor
then.
Recently some nice free OCR programs have shown up:
-
Clara OCR
is starting to be a functional OCR program. It is intended for large scale
projects, and I haven't played with it, so I can't say too much about it.
You'll find it in the Mandrake Linux package 'clara'.
-
There's also GOCR which is becoming quite good,
depending on the quality of the scan and the font. It works via the command
line, but it comes with a simple graphical (GTK) frontend.
With GOCR, you have to scan the document first, save it as an .pnm file and
then convert it. Some frontends like XSane, Kooka or QuiteInsane allow you
to use GOCR as a plug-in, but they lack the ability to set some options for
GOCR, which you can set using GOCR or GTK-OCR. You have to choose between
ease of use and flexibility.
section index top
When I started with Linux I had an old sheetfed scanner,
bought used. It was a Microtek Pagewiz connected to the parport, and it wasn't
mentioned on the list of supported scanners. The list said only SCSI scanners
were supported, and no parport models.
I found kernel drivers for the parport models, the 'ppscsi' drivers, which
supported my scanner by implementing some sort of SCSI-over-parport protocol.
With these kernel modules the kernel recognized the scanner, but the SANE
backend did not seem to support it. I subscribed to the SANE mailing list
and got support from the developers, which led to my scanner getting supported.
Anyway, this was a major venture for me: patching and compiling the kernel,
and patching and compiling SANE. I had never compiled anything before.
These days, I use an Epson scanner. It works fine via
USB, and I haven't had a single problem with it so far. I have also used
another scanner by Microtek. Both are supported very well by SANE, the scan
quality is even better than what I get when using the software which came
with the scanner ... :-)
section index top
The backend for Epson scanners is one of the best, because
Epson releases sufficient documentation about the scanner. This also applies
to Umax and - to a certain amount - to Mustek.
If you're buying a scanner, and you have some money to spare, I'd suggest
an Epson. Any model should do, except for the 1250, which is completely different
from the rest.
If you want to spend less money, a Mustek might be fine. Better check the
list of supported scanners
then, because there's a wide variety of available models.
Like with most other hardware, writing SANE backends
is basically a game of catching up with new models issued by the hardware
vendors. New drivers are often written by users coming from other operating
system who want their devices supported.
Needless to say that a lot of new scanners aren't supported yet. Still, a
lot of scanner models are akin. Most Epson scanners use the same backend.
For Microtek scanners there are two backends which support most models. SANE
used to support SCSI models only, but nowadays parport and USB models are
just as supported as SCSI models are.
Overall SANE can be regarded as a standard and it's
a very functional piece of software. The main shortcoming is the absence
of drivers for some scanner models because manufacturers refuse to release
in-depth documentation.
For supported hardware, SANE can rival with the scan software provided for
Windows and Mac OS. In my experience and the experience of quite a few other
people, the scan quality is superior to that of scans made with other software.
section index top
|