[sane-devel] Suggestion for scanning frontends

Nick Lamb njl98r@ecs.soton.ac.uk
Sat, 13 Apr 2002 14:19:52 +0100


On Sat, Apr 13, 2002 at 01:38:11PM +0200, Oliver Rauch wrote:
> I suggest not to do such things in a backend.
> If we put it into a backend then we have a lot of
> duplicate work that is not necessary.

In principal I agree, but the ideal (I think) that we're aiming for here
is to avoid having the user manually select physical scan areas that
are known in advance for the hardware. I'm thinking here about the
cheap flatbeds with adapters, not manual or motor-assist dedicated
negative scanners.

If you put a photo on a flatbed then obviously you're going to have to
select the area containing the photo, or rely on the (good but not
always 100% accurate) auto-selection from a frontend like XSane. But
when you put slides in a fixed mounting and insert them, the location
of those slides IS known a priori and it would be nice to be able to
tell a smarter-than-average frontend like XSane about this.

So far as I recall the "State of the art" is recognising the presence
of the adapter (either by user input or in software) and setting the
SANE max scan area to the extent of the adapter. That's nice, but
users would like to say "Scan slides 2, 4 and 6 to separate files"
instead of manually selecting each slide.

How about backends use the normal SANE mechanisms to say to the frontend
not only "Total scan area is 0.0,0.0 - 2.5,15.0" but also
"Scan region 1 = 0.1,0.1 - 2.4,3.0", "Scan region 2 = ...."

This is invisible to existing frontends (well, it will appear in the
Advanced dialog) but newer frontends could read it as a list of preset
scan regions to offer to the user. In addition frontends could save local
presets on a per-scanner basis, so that users can have their own
presets for e.g. "Proof-sized comic page".

Does that sound like a reasonable plan? I don't think we can push all
the functionality into the frontend because it just doesn't know as
much about the hardware as the backend in most cases. If the idea for
backends to suggest scan regions works then it can be set in stone in
a future version of the SANE paper standard.

Nick.