I've been working on a document imaging application for a financial services company in New York City. They are using Bell and Howell scanners and I wanted to implement the imaging application on a Linux platform. However, there seemed to be few options available for driving these scanners under Linux.
I had heard good things about the SANE project but was disappointed when I did not see a backend for Bell and Howell scanners. I sent this message to the sane-devel mailing list, in a attempt to see if there had been any work done in this area. It didn't generate much of a response, unfortunately, and I began to look elsewhere.
In the absence of SANE support I contracted with tummy.com, ltd. to write a command line program to drive the scanner, acquire images and write them to consecutively numbered, G4 compressed TIFF files. tummy.com provided bnhscan, a command line program that did everything that we needed. It's a great program and supports all of the important advanced features of the scanner. It was a key component in the document imaging application for my client.
I had discussed with the folks at tummy.com the possibility of implementing a scanning solution based on the SANE API. We both thought that it was a good idea to do so, but we opted to take a non-SANE approach because of time constraints that came from my client. We hoped that some time in the future, we could revisit this issue and merge this work into the SANE project.
Recently, I was asked by my client to port the imaging application to Solaris. This would be the opportunity to revisit the integration with SANE, I thought. I checked the supported platforms section of the SANE website verifying that it had be ported to Solaris. So now the work of integrating with SANE would be offset by the fact that the SANE infrastructure had already been ported to a wide range of platforms and our porting efforts would be minimized.
So the work began on breaking bnhscan down into front end and back end functionality. The result is sane-bh, the SANE backend for Bell and Howell scanners, and scanadf, a modified version of the SANE frontend, scanimage, that incorporates some enhanced features present in bnhscan.
And now, through the SANE architecture's decoupling of front and back ends, I can get the functionality of bnhscan when I use my HP 6250C scanner -- I can't afford a $16,000 Bell and Howell 6338 model ;-)
And then there's the network scanning support, via saned , that comes along as an extra added bonus.
And there's nothing quite like driving the Bell and Howell from within the GIMP using xsane or scanimage
SANE is truly a Good Thing. Thanks, SANE developers!