1 /* sane - Scanner Access Now Easy.
2 Copyright (C) 1996, 1997 David Mosberger-Tang and Andreas Beck
3 This file is part of the SANE package.
5 SANE is free software; you can redistribute it and/or modify it under
6 the terms of the GNU General Public License as published by the Free
7 Software Foundation; either version 2 of the License, or (at your
8 option) any later version.
10 SANE is distributed in the hope that it will be useful, but WITHOUT
11 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
12 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
15 You should have received a copy of the GNU General Public License
16 along with sane; see the file COPYING. If not, write to the Free
17 Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19 As a special exception, the authors of SANE give permission for
20 additional uses of the libraries contained in this release of SANE.
22 The exception is that, if you link a SANE library with other files
23 to produce an executable, this does not by itself cause the
24 resulting executable to be covered by the GNU General Public
25 License. Your use of that executable is in no way restricted on
26 account of linking the SANE library code into it.
28 This exception does not, however, invalidate any other reasons why
29 the executable file might be covered by the GNU General Public
32 If you submit changes to SANE to the maintainers to be included in
33 a subsequent release, you agree by submitting the changes that
34 those changes may be distributed with this exception intact.
36 If you write modifications of your own for SANE, it is your choice
37 whether to permit this exception to apply to your modifications.
38 If you do not wish that, delete this exception notice.
40 This file declares common option names, titles, and descriptions. A
41 backend is not limited to these options but for the sake of
42 consistency it's better to use options declared here when appropriate.
45 /* This file defines several option NAMEs, TITLEs and DESCs
46 that are (or should be) used by several backends.
48 All well known options should be listed here. But this does
49 not mean that all options that are listed here are well known options.
50 To find out if an option is a well known option and how well known
51 options have to be defined please take a look at the sane standard!!!
57 #define SANE_I18N(text) text
60 /* This _must_ be the first option (index 0): */
61 #define SANE_NAME_NUM_OPTIONS "" /* never settable */
62 #define SANE_NAME_PREVIEW "preview"
63 #define SANE_NAME_GRAY_PREVIEW "preview-in-gray"
64 #define SANE_NAME_BIT_DEPTH "depth"
65 #define SANE_NAME_SCAN_MODE "mode"
66 #define SANE_NAME_SCAN_SPEED "speed"
67 #define SANE_NAME_SCAN_SOURCE "source"
68 #define SANE_NAME_BACKTRACK "backtrack"
69 /* Most user-interfaces will let the user specify the scan area as the
70 top-left corner and the width/height of the scan area. The reason
71 the backend interface uses the top-left/bottom-right corner is so
72 that the scan area values can be properly constraint independent of
73 any other option value. */
74 #define SANE_NAME_SCAN_TL_X "tl-x"
75 #define SANE_NAME_SCAN_TL_Y "tl-y"
76 #define SANE_NAME_SCAN_BR_X "br-x"
77 #define SANE_NAME_SCAN_BR_Y "br-y"
78 #define SANE_NAME_SCAN_RESOLUTION "resolution"
79 #define SANE_NAME_SCAN_X_RESOLUTION "resolution"
80 #define SANE_NAME_SCAN_Y_RESOLUTION "y-resolution"
81 #define SANE_NAME_CUSTOM_GAMMA "custom-gamma"
82 #define SANE_NAME_GAMMA_VECTOR "gamma-table"
83 #define SANE_NAME_GAMMA_VECTOR_R "red-gamma-table"
84 #define SANE_NAME_GAMMA_VECTOR_G "green-gamma-table"
85 #define SANE_NAME_GAMMA_VECTOR_B "blue-gamma-table"
86 #define SANE_NAME_BRIGHTNESS "brightness"
87 #define SANE_NAME_CONTRAST "contrast"
88 #define SANE_NAME_GRAIN_SIZE "grain"
89 #define SANE_NAME_HALFTONE "halftoning"
90 #define SANE_NAME_BLACK_LEVEL "black-level"
91 #define SANE_NAME_WHITE_LEVEL "white-level"
92 #define SANE_NAME_WHITE_LEVEL_R "white-level-r"
93 #define SANE_NAME_WHITE_LEVEL_G "white-level-g"
94 #define SANE_NAME_WHITE_LEVEL_B "white-level-b"
95 #define SANE_NAME_SHADOW "shadow"
96 #define SANE_NAME_SHADOW_R "shadow-r"
97 #define SANE_NAME_SHADOW_G "shadow-g"
98 #define SANE_NAME_SHADOW_B "shadow-b"
99 #define SANE_NAME_HIGHLIGHT "highlight"
100 #define SANE_NAME_HIGHLIGHT_R "highlight-r"
101 #define SANE_NAME_HIGHLIGHT_G "highlight-g"
102 #define SANE_NAME_HIGHLIGHT_B "highlight-b"
103 #define SANE_NAME_HUE "hue"
104 #define SANE_NAME_SATURATION "saturation"
105 #define SANE_NAME_FILE "filename"
106 #define SANE_NAME_HALFTONE_DIMENSION "halftone-size"
107 #define SANE_NAME_HALFTONE_PATTERN "halftone-pattern"
108 #define SANE_NAME_RESOLUTION_BIND "resolution-bind"
109 #define SANE_NAME_NEGATIVE "negative"
110 #define SANE_NAME_QUALITY_CAL "quality-cal"
111 #define SANE_NAME_DOR "double-res"
112 #define SANE_NAME_RGB_BIND "rgb-bind"
113 #define SANE_NAME_THRESHOLD "threshold"
114 #define SANE_NAME_ANALOG_GAMMA "analog-gamma"
115 #define SANE_NAME_ANALOG_GAMMA_R "analog-gamma-r"
116 #define SANE_NAME_ANALOG_GAMMA_G "analog-gamma-g"
117 #define SANE_NAME_ANALOG_GAMMA_B "analog-gamma-b"
118 #define SANE_NAME_ANALOG_GAMMA_BIND "analog-gamma-bind"
119 #define SANE_NAME_WARMUP "warmup"
120 #define SANE_NAME_CAL_EXPOS_TIME "cal-exposure-time"
121 #define SANE_NAME_CAL_EXPOS_TIME_R "cal-exposure-time-r"
122 #define SANE_NAME_CAL_EXPOS_TIME_G "cal-exposure-time-g"
123 #define SANE_NAME_CAL_EXPOS_TIME_B "cal-exposure-time-b"
124 #define SANE_NAME_SCAN_EXPOS_TIME "scan-exposure-time"
125 #define SANE_NAME_SCAN_EXPOS_TIME_R "scan-exposure-time-r"
126 #define SANE_NAME_SCAN_EXPOS_TIME_G "scan-exposure-time-g"
127 #define SANE_NAME_SCAN_EXPOS_TIME_B "scan-exposure-time-b"
128 #define SANE_NAME_SELECT_EXPOSURE_TIME "select-exposure-time"
129 #define SANE_NAME_CAL_LAMP_DEN "cal-lamp-density"
130 #define SANE_NAME_SCAN_LAMP_DEN "scan-lamp-density"
131 #define SANE_NAME_SELECT_LAMP_DENSITY "select-lamp-density"
132 #define SANE_NAME_LAMP_OFF_AT_EXIT "lamp-off-at-exit"
134 #define SANE_TITLE_NUM_OPTIONS SANE_I18N("Number of options")
135 #define SANE_TITLE_PREVIEW SANE_I18N("Preview")
136 #define SANE_TITLE_GRAY_PREVIEW SANE_I18N("Force monochrome preview")
137 #define SANE_TITLE_BIT_DEPTH SANE_I18N("Bit depth")
138 #define SANE_TITLE_SCAN_MODE SANE_I18N("Scan mode")
139 #define SANE_TITLE_SCAN_SPEED SANE_I18N("Scan speed")
140 #define SANE_TITLE_SCAN_SOURCE SANE_I18N("Scan source")
141 #define SANE_TITLE_BACKTRACK SANE_I18N("Force backtracking")
142 #define SANE_TITLE_SCAN_TL_X SANE_I18N("Top-left x")
143 #define SANE_TITLE_SCAN_TL_Y SANE_I18N("Top-left y")
144 #define SANE_TITLE_SCAN_BR_X SANE_I18N("Bottom-right x")
145 #define SANE_TITLE_SCAN_BR_Y SANE_I18N("Bottom-right y")
146 #define SANE_TITLE_SCAN_RESOLUTION SANE_I18N("Scan resolution")
147 #define SANE_TITLE_SCAN_X_RESOLUTION SANE_I18N("X-resolution")
148 #define SANE_TITLE_SCAN_Y_RESOLUTION SANE_I18N("Y-resolution")
149 #define SANE_TITLE_CUSTOM_GAMMA SANE_I18N("Use custom gamma table")
150 #define SANE_TITLE_GAMMA_VECTOR SANE_I18N("Image intensity")
151 #define SANE_TITLE_GAMMA_VECTOR_R SANE_I18N("Red intensity")
152 #define SANE_TITLE_GAMMA_VECTOR_G SANE_I18N("Green intensity")
153 #define SANE_TITLE_GAMMA_VECTOR_B SANE_I18N("Blue intensity")
154 #define SANE_TITLE_BRIGHTNESS SANE_I18N("Brightness")
155 #define SANE_TITLE_CONTRAST SANE_I18N("Contrast")
156 #define SANE_TITLE_GRAIN_SIZE SANE_I18N("Grain size")
157 #define SANE_TITLE_HALFTONE SANE_I18N("Halftoning")
158 #define SANE_TITLE_BLACK_LEVEL SANE_I18N("Black level")
159 #define SANE_TITLE_WHITE_LEVEL SANE_I18N("White level")
160 #define SANE_TITLE_WHITE_LEVEL_R SANE_I18N("White level for red")
161 #define SANE_TITLE_WHITE_LEVEL_G SANE_I18N("White level for green")
162 #define SANE_TITLE_WHITE_LEVEL_B SANE_I18N("White level for blue")
163 #define SANE_TITLE_SHADOW SANE_I18N("Shadow")
164 #define SANE_TITLE_SHADOW_R SANE_I18N("Shadow for red")
165 #define SANE_TITLE_SHADOW_G SANE_I18N("Shadow for green")
166 #define SANE_TITLE_SHADOW_B SANE_I18N("Shadow for blue")
167 #define SANE_TITLE_HIGHLIGHT SANE_I18N("Highlight")
168 #define SANE_TITLE_HIGHLIGHT_R SANE_I18N("Highlight for red")
169 #define SANE_TITLE_HIGHLIGHT_G SANE_I18N("Highlight for green")
170 #define SANE_TITLE_HIGHLIGHT_B SANE_I18N("Highlight for blue")
171 #define SANE_TITLE_HUE SANE_I18N("Hue")
172 #define SANE_TITLE_SATURATION SANE_I18N("Saturation")
173 #define SANE_TITLE_FILE SANE_I18N("Filename")
174 #define SANE_TITLE_HALFTONE_DIMENSION SANE_I18N("Halftone pattern size")
175 #define SANE_TITLE_HALFTONE_PATTERN SANE_I18N("Halftone pattern")
176 #define SANE_TITLE_RESOLUTION_BIND SANE_I18N("Bind X and Y resolution")
177 #define SANE_TITLE_NEGATIVE SANE_I18N("Negative")
178 #define SANE_TITLE_QUALITY_CAL SANE_I18N("Quality calibration")
179 #define SANE_TITLE_DOR SANE_I18N("Double Optical Resolution")
180 #define SANE_TITLE_RGB_BIND SANE_I18N("Bind RGB")
181 #define SANE_TITLE_THRESHOLD SANE_I18N("Threshold")
182 #define SANE_TITLE_ANALOG_GAMMA SANE_I18N("Analog gamma correction")
183 #define SANE_TITLE_ANALOG_GAMMA_R SANE_I18N("Analog gamma red")
184 #define SANE_TITLE_ANALOG_GAMMA_G SANE_I18N("Analog gamma green")
185 #define SANE_TITLE_ANALOG_GAMMA_B SANE_I18N("Analog gamma blue")
186 #define SANE_TITLE_ANALOG_GAMMA_BIND SANE_I18N("Bind analog gamma")
187 #define SANE_TITLE_WARMUP SANE_I18N("Warmup lamp")
188 #define SANE_TITLE_CAL_EXPOS_TIME SANE_I18N("Cal. exposure-time")
189 #define SANE_TITLE_CAL_EXPOS_TIME_R SANE_I18N("Cal. exposure-time for red")
190 #define SANE_TITLE_CAL_EXPOS_TIME_G SANE_I18N("Cal. exposure-time for " \
192 #define SANE_TITLE_CAL_EXPOS_TIME_B SANE_I18N("Cal. exposure-time for blue")
193 #define SANE_TITLE_SCAN_EXPOS_TIME SANE_I18N("Scan exposure-time")
194 #define SANE_TITLE_SCAN_EXPOS_TIME_R SANE_I18N("Scan exposure-time for red")
195 #define SANE_TITLE_SCAN_EXPOS_TIME_G SANE_I18N("Scan exposure-time for " \
197 #define SANE_TITLE_SCAN_EXPOS_TIME_B SANE_I18N("Scan exposure-time for blue")
198 #define SANE_TITLE_SELECT_EXPOSURE_TIME SANE_I18N("Set exposure-time")
199 #define SANE_TITLE_CAL_LAMP_DEN SANE_I18N("Cal. lamp density")
200 #define SANE_TITLE_SCAN_LAMP_DEN SANE_I18N("Scan lamp density")
201 #define SANE_TITLE_SELECT_LAMP_DENSITY SANE_I18N("Set lamp density")
202 #define SANE_TITLE_LAMP_OFF_AT_EXIT SANE_I18N("Lamp off at exit")
204 /* Descriptive/help strings for above options: */
205 #define SANE_DESC_NUM_OPTIONS \
206 SANE_I18N("Read-only option that specifies how many options a specific " \
209 #define SANE_DESC_PREVIEW \
210 SANE_I18N("Request a preview-quality scan.")
212 #define SANE_DESC_GRAY_PREVIEW \
213 SANE_I18N("Request that all previews are done in monochrome mode. On a " \
214 "three-pass scanner this cuts down the number of passes to one and on a " \
215 "one-pass scanner, it reduces the memory requirements and scan-time of the " \
218 #define SANE_DESC_BIT_DEPTH \
219 SANE_I18N("Number of bits per sample, typical values are 1 for \"line-art\" " \
220 "and 8 for multibit scans.")
222 #define SANE_DESC_SCAN_MODE \
223 SANE_I18N("Selects the scan mode (e.g., lineart, monochrome, or color).")
225 #define SANE_DESC_SCAN_SPEED \
226 SANE_I18N("Determines the speed at which the scan proceeds.")
228 #define SANE_DESC_SCAN_SOURCE \
229 SANE_I18N("Selects the scan source (such as a document-feeder).")
231 #define SANE_DESC_BACKTRACK \
232 SANE_I18N("Controls whether backtracking is forced.")
234 #define SANE_DESC_SCAN_TL_X \
235 SANE_I18N("Top-left x position of scan area.")
237 #define SANE_DESC_SCAN_TL_Y \
238 SANE_I18N("Top-left y position of scan area.")
240 #define SANE_DESC_SCAN_BR_X \
241 SANE_I18N("Bottom-right x position of scan area.")
243 #define SANE_DESC_SCAN_BR_Y \
244 SANE_I18N("Bottom-right y position of scan area.")
246 #define SANE_DESC_SCAN_RESOLUTION \
247 SANE_I18N("Sets the resolution of the scanned image.")
249 #define SANE_DESC_SCAN_X_RESOLUTION \
250 SANE_I18N("Sets the horizontal resolution of the scanned image.")
252 #define SANE_DESC_SCAN_Y_RESOLUTION \
253 SANE_I18N("Sets the vertical resolution of the scanned image.")
255 #define SANE_DESC_CUSTOM_GAMMA \
256 SANE_I18N("Determines whether a builtin or a custom gamma-table should be " \
259 #define SANE_DESC_GAMMA_VECTOR \
260 SANE_I18N("Gamma-correction table. In color mode this option equally " \
261 "affects the red, green, and blue channels simultaneously (i.e., it is an " \
262 "intensity gamma table).")
264 #define SANE_DESC_GAMMA_VECTOR_R \
265 SANE_I18N("Gamma-correction table for the red band.")
267 #define SANE_DESC_GAMMA_VECTOR_G \
268 SANE_I18N("Gamma-correction table for the green band.")
270 #define SANE_DESC_GAMMA_VECTOR_B \
271 SANE_I18N("Gamma-correction table for the blue band.")
273 #define SANE_DESC_BRIGHTNESS \
274 SANE_I18N("Controls the brightness of the acquired image.")
276 #define SANE_DESC_CONTRAST \
277 SANE_I18N("Controls the contrast of the acquired image.")
279 #define SANE_DESC_GRAIN_SIZE \
280 SANE_I18N("Selects the \"graininess\" of the acquired image. Smaller values " \
281 "result in sharper images.")
283 #define SANE_DESC_HALFTONE \
284 SANE_I18N("Selects whether the acquired image should be halftoned (dithered).")
286 #define SANE_DESC_BLACK_LEVEL \
287 SANE_I18N("Selects what radiance level should be considered \"black\".")
289 #define SANE_DESC_WHITE_LEVEL \
290 SANE_I18N("Selects what radiance level should be considered \"white\".")
292 #define SANE_DESC_WHITE_LEVEL_R \
293 SANE_I18N("Selects what red radiance level should be considered \"white\".")
295 #define SANE_DESC_WHITE_LEVEL_G \
296 SANE_I18N("Selects what green radiance level should be considered \"white\".")
298 #define SANE_DESC_WHITE_LEVEL_B \
299 SANE_I18N("Selects what blue radiance level should be considered \"white\".")
301 #define SANE_DESC_SHADOW \
302 SANE_I18N("Selects what radiance level should be considered \"black\".")
303 #define SANE_DESC_SHADOW_R \
304 SANE_I18N("Selects what red radiance level should be considered \"black\".")
305 #define SANE_DESC_SHADOW_G \
306 SANE_I18N("Selects what green radiance level should be considered \"black\".")
307 #define SANE_DESC_SHADOW_B \
308 SANE_I18N("Selects what blue radiance level should be considered \"black\".")
310 #define SANE_DESC_HIGHLIGHT \
311 SANE_I18N("Selects what radiance level should be considered \"white\".")
312 #define SANE_DESC_HIGHLIGHT_R \
313 SANE_I18N("Selects what red radiance level should be considered \"full red\".")
314 #define SANE_DESC_HIGHLIGHT_G \
315 SANE_I18N("Selects what green radiance level should be considered \"full " \
317 #define SANE_DESC_HIGHLIGHT_B \
318 SANE_I18N("Selects what blue radiance level should be considered \"full " \
321 #define SANE_DESC_HUE \
322 SANE_I18N("Controls the \"hue\" (blue-level) of the acquired image.")
324 #define SANE_DESC_SATURATION \
325 SANE_I18N("The saturation level controls the amount of \"blooming\" that " \
326 "occurs when acquiring an image with a camera. Larger values cause more " \
329 #define SANE_DESC_FILE \
330 SANE_I18N("The filename of the image to be loaded.")
332 #define SANE_DESC_HALFTONE_DIMENSION \
333 SANE_I18N("Sets the size of the halftoning (dithering) pattern used when " \
334 "scanning halftoned images.")
336 #define SANE_DESC_HALFTONE_PATTERN \
337 SANE_I18N("Defines the halftoning (dithering) pattern for scanning " \
340 #define SANE_DESC_RESOLUTION_BIND \
341 SANE_I18N("Use same values for X and Y resolution")
342 #define SANE_DESC_NEGATIVE \
343 SANE_I18N("Swap black and white")
344 #define SANE_DESC_QUALITY_CAL \
345 SANE_I18N("Do a quality white-calibration")
346 #define SANE_DESC_DOR \
347 SANE_I18N("Use lens that doubles optical resolution")
348 #define SANE_DESC_RGB_BIND \
349 SANE_I18N("In RGB-mode use same values for each color")
350 #define SANE_DESC_THRESHOLD \
351 SANE_I18N("Select minimum-brightness to get a white point")
352 #define SANE_DESC_ANALOG_GAMMA \
353 SANE_I18N("Analog gamma-correction")
354 #define SANE_DESC_ANALOG_GAMMA_R \
355 SANE_I18N("Analog gamma-correction for red")
356 #define SANE_DESC_ANALOG_GAMMA_G \
357 SANE_I18N("Analog gamma-correction for green")
358 #define SANE_DESC_ANALOG_GAMMA_B \
359 SANE_I18N("Analog gamma-correction for blue")
360 #define SANE_DESC_ANALOG_GAMMA_BIND \
361 SANE_I18N("In RGB-mode use same values for each color")
362 #define SANE_DESC_WARMUP \
363 SANE_I18N("Warmup lamp before scanning")
364 #define SANE_DESC_CAL_EXPOS_TIME \
365 SANE_I18N("Define exposure-time for calibration")
366 #define SANE_DESC_CAL_EXPOS_TIME_R \
367 SANE_I18N("Define exposure-time for red calibration")
368 #define SANE_DESC_CAL_EXPOS_TIME_G \
369 SANE_I18N("Define exposure-time for green calibration")
370 #define SANE_DESC_CAL_EXPOS_TIME_B \
371 SANE_I18N("Define exposure-time for blue calibration")
372 #define SANE_DESC_SCAN_EXPOS_TIME \
373 SANE_I18N("Define exposure-time for scan")
374 #define SANE_DESC_SCAN_EXPOS_TIME_R \
375 SANE_I18N("Define exposure-time for red scan")
376 #define SANE_DESC_SCAN_EXPOS_TIME_G \
377 SANE_I18N("Define exposure-time for green scan")
378 #define SANE_DESC_SCAN_EXPOS_TIME_B \
379 SANE_I18N("Define exposure-time for blue scan")
380 #define SANE_DESC_SELECT_EXPOSURE_TIME \
381 SANE_I18N("Enable selection of exposure-time")
382 #define SANE_DESC_CAL_LAMP_DEN \
383 SANE_I18N("Define lamp density for calibration")
384 #define SANE_DESC_SCAN_LAMP_DEN \
385 SANE_I18N("Define lamp density for scan")
386 #define SANE_DESC_SELECT_LAMP_DENSITY \
387 SANE_I18N("Enable selection of lamp density")
388 #define SANE_DESC_LAMP_OFF_AT_EXIT \
389 SANE_I18N("Turn off lamp when program exits")
391 /* Typical values for stringlists (to keep the backends consistent) */
393 #define SANE_VALUE_SCAN_MODE_COLOR SANE_I18N("Color")
394 #define SANE_VALUE_SCAN_MODE_GRAY SANE_I18N("Gray")
395 #define SANE_VALUE_SCAN_MODE_LINEART SANE_I18N("Lineart")
397 #endif /* saneopts_h */