diff --git a/index.html b/index.html index 22412d1a..c09d6dc6 100644 --- a/index.html +++ b/index.html @@ -90,7 +90,7 @@
- +

Introduction

diff --git a/intro.html b/intro.html new file mode 100644 index 00000000..1cbff254 --- /dev/null +++ b/intro.html @@ -0,0 +1,101 @@ + + + + + SANE - Introduction + + + + + + + + + + +
+ SANE +
+ + +
+

SANE - Introduction

+
+ +
+

+ SANE stands for "Scanner Access Now Easy" and is an application + programming interface (API) that provides standardized access to any + raster image scanner hardware (flatbed scanner, hand-held scanner, + video- and still-cameras, frame-grabbers, etc.). The SANE API + is public domain and its discussion and development is open to + everybody. The current source code is written for UNIX (including + GNU/Linux) and is available under the GNU General Public License (the + SANE API is available to proprietary applications and backends + as well, however). Ports to MacOS X, OS/2 and Microsoft Windows are + wither already done or in progress. +

+ +

+ SANE is a universal scanner interface. The value of such a + universal interface is that it allows writing just one driver per image + acquisition device rather than one driver for each device and + application. So, if you have three applications and four devices, + traditionally you'd have had to write 12 different programs. With + SANE, this number is reduced to seven: the three applications + plus the four drivers. Of course, the savings get even bigger as more + and more drivers and/or applications are added. +

+ +

+ Not only does SANE reduce development time and code duplication, + it also raises the level at which applications can work. As such, it + will enable applications that were previously unheard of in the UNIX + world. While SANE is primarily targeted at a UNIX environment, the + standard has been carefully designed to make it possible to implement + the API on virtually any hardware or operating system. +

+ +

+ While SANE is an acronym for “Scanner Access Now + Easy” the hope is of course that SANE is indeed sane in + the sense that it will allow easy implementation of the API while + accommodating all features required by today's scanner hardware and + applications. Specifically, SANE should be broad enough to + accommodate devices such as scanners, digital still and video cameras, + as well as virtual devices like image file filters. +

+ +

+ If you're familiar with TWAIN, you + may wonder why there is a need for SANE. Simply put, TWAIN + does not separate the user-interface from the driver of a device. This, + unfortunately, makes it difficult, if not impossible, to provide network + transparent access to image acquisition devices (which is useful if you + have a LAN full of machines, but scanners connected to only one or two + machines; it's obviously also useful for remote-controlled cameras and + such). It also means that any particular TWAIN driver is pretty much + married to a particular GUI API (be it Win32 or the Mac API). In + contrast, SANE cleanly separates device controls from their + representation in a user-interface. As a result, SANE has no + difficulty supporting command-line driven interfaces or + network-transparent scanning. For these reasons, it is unlikely that + there will ever be a SANE backend that can talk to a TWAIN + driver. The converse is no problem though: it is pretty straight + forward to access SANE devices through a TWAIN source. In + summary, if TWAIN had been just a little better designed, there would + have been no reason for SANE to exist, but things being the way + they are, TWAIN simply isn't SANE. +

+ +
+ +

+ $Date$ $Author$
+ SANE homepage +

+ + +