On 06/25/2015 05:27 PM, Olaf Meeuwissen wrote:

Have a look at the SANE API specification as well.  It's at

   http://www.sane-project.org/html/

Thanks for reminding me. I came across that years ago when I was first looking at using sane, and for some reason I didn't notice that before I started this project.


Can your custom project assume that only these scanner will ever be
used?  If yes, you can get away with much more hard-coding than you
would be able to do with a more generic SANE frontend.

I had originally planned on hard-coding the options, but as part of my debugging I'm now running through all the backend options via sane_get_option_descriptor and setting them appropriately.


You are aware of the fact that these values differ between backends,
right?  You should use sane_get_option_descriptor() and iterate over the
options are see if any corresponds to one of the well-known options for

   resolution
   tl-x
   tl-y
   br-x
   br-y

There are no well-known options for mode and (bit-)depth, bummer.
See http://www.sane-project.org/html/doc014.html for a list

Once you've found the options of interest, you can set values of the
correct type and that satisfy the option's constraint (if any).
Hope this helps,

This pointed me down the right path.  I was able to correct my problems by:

- using SANE_FIX() macro to properly get the coordinate options mapped to the correct variable type.

- realizing that the epson2 backend I was using took a character string to set the scanning mode ("Color") instead of a numeric option.

Once I've got the project up and running I'm going to publish the code - hopefully someone will find the examples useful.


Thanks again...

-- Leon

--
sane-devel mailing list: sane-devel@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/sane-devel
Unsubscribe: Send mail with subject "unsubscribe your_password"
            to sane-devel-requ...@lists.alioth.debian.org

Reply via email to