Our practice is to provide a standard user interface for all of our scanners. These UI programs then call upon the SANE backends as needed. Of course, they need to be able to understand the options for each of the backends so they can translate the user's choices. But it appears that there is little standardization in the way various backends define and use even the standard options defined in include/sane/saneopts.h. I'd appreciate any clarification which can be offered.
* SANE_DESC_SCAN_MODE Selects the scan mode (e.g., lineart,monochrome, or color). Is there any standard list of modes from which to choose? When two backends use different string values for what appears to be the same choice, it makes the UI awkward at the least. * SANE_DESC_SCAN_SPEED Determines the speed at which the scan proceeds. Is there any standard unit of measure for this variable? Some backends seem to assign strings, others assign numeric values. The meaning of the numbers is not consistent and even the strings are different from one backend to another. * SANE_DESC_CAL_LAMP_DEN Define lamp density for calibration * SANE_DESC_SCAN_LAMP_DEN Define lamp density for scan * SANE_DESC_SELECT_LAMP_DENSITY Enable selection of lamp density These appear to be unique to the UMAX backend. Should I understand that "density" is, in some sense, equivalent to "intensity"? I can understand that SANE does not want to preclude innovation in the hardward realm by limiting the choices. But I do think we could be a little more consistent in the use of these options. At the least, SANE should specify if a standard option should be a string, a number, or a boolean. If there is a need for more than one type, they should be different options. -- Dave Close Dreamworks SKG, Animation Technology +1 818 695 6962 Glendale California 91201-3007 [email protected] http://www.dreamworks.com/
