kopia lustrzana https://gitlab.com/sane-project/backends
hand_scanner and three_pass options need SANE_INFO_RELOAD_PARAMETERS. All
options have a symbolic name now. Removed bogus translation from po. New version: 1.0.3. Henning Meier-Geinitz <henning@meier-geinitz.de>DEVEL_2_0_BRANCH-1
rodzic
d2cf6a57e1
commit
57337989cf
253
backend/pnm.c
253
backend/pnm.c
|
@ -1,7 +1,7 @@
|
||||||
/* sane - Scanner Access Now Easy.
|
/* sane - Scanner Access Now Easy.
|
||||||
Copyright (C) 1996, 1997 Andreas Beck
|
Copyright (C) 1996, 1997 Andreas Beck
|
||||||
Copyright (C) 2000, 2001 Michael Herder <crapsite@gmx.net>
|
Copyright (C) 2000, 2001 Michael Herder <crapsite@gmx.net>
|
||||||
Copyright (C) 2001 Henning Meier-Geinitz <henning@meier-geinitz.de>
|
Copyright (C) 2001, 2002 Henning Meier-Geinitz <henning@meier-geinitz.de>
|
||||||
This file is part of the SANE package.
|
This file is part of the SANE package.
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or
|
This program is free software; you can redistribute it and/or
|
||||||
|
@ -40,7 +40,7 @@
|
||||||
whether to permit this exception to apply to your modifications.
|
whether to permit this exception to apply to your modifications.
|
||||||
If you do not wish that, delete this exception notice. */
|
If you do not wish that, delete this exception notice. */
|
||||||
|
|
||||||
#define BUILD 2
|
#define BUILD 3
|
||||||
|
|
||||||
#include "../include/sane/config.h"
|
#include "../include/sane/config.h"
|
||||||
|
|
||||||
|
@ -111,9 +111,44 @@ static const SANE_Range gamma_range =
|
||||||
255 , /* maximum */
|
255 , /* maximum */
|
||||||
0 /* quantization */
|
0 /* quantization */
|
||||||
};
|
};
|
||||||
|
typedef enum
|
||||||
|
{
|
||||||
|
opt_num_opts = 0,
|
||||||
|
opt_source_group,
|
||||||
|
opt_filename,
|
||||||
|
opt_resolution,
|
||||||
|
opt_enhancement_group,
|
||||||
|
opt_brightness,
|
||||||
|
opt_contrast,
|
||||||
|
opt_grayify,
|
||||||
|
opt_three_pass,
|
||||||
|
opt_hand_scanner,
|
||||||
|
opt_default_enhancements,
|
||||||
|
opt_read_only,
|
||||||
|
opt_gamma_group,
|
||||||
|
opt_custom_gamma,
|
||||||
|
opt_gamma,
|
||||||
|
opt_gamma_r,
|
||||||
|
opt_gamma_g,
|
||||||
|
opt_gamma_b,
|
||||||
|
opt_status_group,
|
||||||
|
opt_status,
|
||||||
|
opt_status_eof,
|
||||||
|
opt_status_jammed,
|
||||||
|
opt_status_nodocs,
|
||||||
|
opt_status_coveropen,
|
||||||
|
opt_status_ioerror,
|
||||||
|
opt_status_nomem,
|
||||||
|
opt_status_accessdenied,
|
||||||
|
|
||||||
|
/* must come last: */
|
||||||
|
num_options
|
||||||
|
}
|
||||||
|
pnm_opts;
|
||||||
|
|
||||||
static SANE_Option_Descriptor sod[] =
|
static SANE_Option_Descriptor sod[] =
|
||||||
{
|
{
|
||||||
{
|
{ /* opt_num_opts */
|
||||||
SANE_NAME_NUM_OPTIONS,
|
SANE_NAME_NUM_OPTIONS,
|
||||||
SANE_TITLE_NUM_OPTIONS,
|
SANE_TITLE_NUM_OPTIONS,
|
||||||
SANE_DESC_NUM_OPTIONS,
|
SANE_DESC_NUM_OPTIONS,
|
||||||
|
@ -124,7 +159,7 @@ static SANE_Option_Descriptor sod[] =
|
||||||
SANE_CONSTRAINT_NONE,
|
SANE_CONSTRAINT_NONE,
|
||||||
{NULL}
|
{NULL}
|
||||||
},
|
},
|
||||||
{
|
{ /* opt_source_group */
|
||||||
"",
|
"",
|
||||||
SANE_I18N("Source Selection"),
|
SANE_I18N("Source Selection"),
|
||||||
SANE_I18N("Selection of the file to load."),
|
SANE_I18N("Selection of the file to load."),
|
||||||
|
@ -135,7 +170,7 @@ static SANE_Option_Descriptor sod[] =
|
||||||
SANE_CONSTRAINT_NONE,
|
SANE_CONSTRAINT_NONE,
|
||||||
{NULL}
|
{NULL}
|
||||||
},
|
},
|
||||||
{
|
{ /* opt_filename */
|
||||||
SANE_NAME_FILE,
|
SANE_NAME_FILE,
|
||||||
SANE_TITLE_FILE,
|
SANE_TITLE_FILE,
|
||||||
SANE_DESC_FILE,
|
SANE_DESC_FILE,
|
||||||
|
@ -147,7 +182,7 @@ static SANE_Option_Descriptor sod[] =
|
||||||
{NULL}
|
{NULL}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
/* resolution */
|
/* opt_resolution */
|
||||||
SANE_NAME_SCAN_RESOLUTION,
|
SANE_NAME_SCAN_RESOLUTION,
|
||||||
SANE_TITLE_SCAN_RESOLUTION,
|
SANE_TITLE_SCAN_RESOLUTION,
|
||||||
SANE_DESC_SCAN_RESOLUTION,
|
SANE_DESC_SCAN_RESOLUTION,
|
||||||
|
@ -158,7 +193,7 @@ static SANE_Option_Descriptor sod[] =
|
||||||
SANE_CONSTRAINT_WORD_LIST,
|
SANE_CONSTRAINT_WORD_LIST,
|
||||||
{(SANE_String_Const *)resbit_list}
|
{(SANE_String_Const *)resbit_list}
|
||||||
},
|
},
|
||||||
{
|
{ /* opt_enhancement_group */
|
||||||
"",
|
"",
|
||||||
SANE_I18N("Image Enhancement"),
|
SANE_I18N("Image Enhancement"),
|
||||||
SANE_I18N("A few controls to enhance image while loading"),
|
SANE_I18N("A few controls to enhance image while loading"),
|
||||||
|
@ -169,7 +204,7 @@ static SANE_Option_Descriptor sod[] =
|
||||||
SANE_CONSTRAINT_NONE,
|
SANE_CONSTRAINT_NONE,
|
||||||
{NULL}
|
{NULL}
|
||||||
},
|
},
|
||||||
{
|
{ /* opt_brightness */
|
||||||
SANE_NAME_BRIGHTNESS,
|
SANE_NAME_BRIGHTNESS,
|
||||||
SANE_TITLE_BRIGHTNESS,
|
SANE_TITLE_BRIGHTNESS,
|
||||||
SANE_DESC_BRIGHTNESS,
|
SANE_DESC_BRIGHTNESS,
|
||||||
|
@ -180,7 +215,7 @@ static SANE_Option_Descriptor sod[] =
|
||||||
SANE_CONSTRAINT_RANGE,
|
SANE_CONSTRAINT_RANGE,
|
||||||
{(SANE_String_Const *) &percentage_range} /* this is ANSI conformant! */
|
{(SANE_String_Const *) &percentage_range} /* this is ANSI conformant! */
|
||||||
},
|
},
|
||||||
{
|
{ /* opt_contrast */
|
||||||
SANE_NAME_CONTRAST,
|
SANE_NAME_CONTRAST,
|
||||||
SANE_TITLE_CONTRAST,
|
SANE_TITLE_CONTRAST,
|
||||||
SANE_DESC_CONTRAST,
|
SANE_DESC_CONTRAST,
|
||||||
|
@ -191,7 +226,7 @@ static SANE_Option_Descriptor sod[] =
|
||||||
SANE_CONSTRAINT_RANGE,
|
SANE_CONSTRAINT_RANGE,
|
||||||
{(SANE_String_Const *) &percentage_range} /* this is ANSI conformant! */
|
{(SANE_String_Const *) &percentage_range} /* this is ANSI conformant! */
|
||||||
},
|
},
|
||||||
{
|
{ /* opt_grayify */
|
||||||
"grayify",
|
"grayify",
|
||||||
SANE_I18N("Grayify"),
|
SANE_I18N("Grayify"),
|
||||||
SANE_I18N("Load the image as grayscale."),
|
SANE_I18N("Load the image as grayscale."),
|
||||||
|
@ -202,7 +237,7 @@ static SANE_Option_Descriptor sod[] =
|
||||||
SANE_CONSTRAINT_NONE,
|
SANE_CONSTRAINT_NONE,
|
||||||
{NULL}
|
{NULL}
|
||||||
},
|
},
|
||||||
{
|
{ /* opt_three_pass */
|
||||||
"three-pass",
|
"three-pass",
|
||||||
SANE_I18N("Three-Pass Simulation"),
|
SANE_I18N("Three-Pass Simulation"),
|
||||||
SANE_I18N("Simulate a three-pass scanner by returning 3 separate frames. "
|
SANE_I18N("Simulate a three-pass scanner by returning 3 separate frames. "
|
||||||
|
@ -214,7 +249,7 @@ static SANE_Option_Descriptor sod[] =
|
||||||
SANE_CONSTRAINT_NONE,
|
SANE_CONSTRAINT_NONE,
|
||||||
{NULL}
|
{NULL}
|
||||||
},
|
},
|
||||||
{
|
{ /* opt_hand_scanner */
|
||||||
"hand-scanner",
|
"hand-scanner",
|
||||||
SANE_I18N("Hand-Scanner Simulation"),
|
SANE_I18N("Hand-Scanner Simulation"),
|
||||||
SANE_I18N("Simulate a hand-scanner. Hand-scanners often do not know the image "
|
SANE_I18N("Simulate a hand-scanner. Hand-scanners often do not know the image "
|
||||||
|
@ -227,7 +262,7 @@ static SANE_Option_Descriptor sod[] =
|
||||||
SANE_CONSTRAINT_NONE,
|
SANE_CONSTRAINT_NONE,
|
||||||
{NULL}
|
{NULL}
|
||||||
},
|
},
|
||||||
{
|
{ /* opt_default_enhancements */
|
||||||
"default-enhancements",
|
"default-enhancements",
|
||||||
SANE_I18N("Defaults"),
|
SANE_I18N("Defaults"),
|
||||||
SANE_I18N("Set default values for enhancement controls (brightness & contrast)."),
|
SANE_I18N("Set default values for enhancement controls (brightness & contrast)."),
|
||||||
|
@ -238,8 +273,8 @@ static SANE_Option_Descriptor sod[] =
|
||||||
SANE_CONSTRAINT_NONE,
|
SANE_CONSTRAINT_NONE,
|
||||||
{NULL}
|
{NULL}
|
||||||
},
|
},
|
||||||
{
|
{ /* opt_read_only */
|
||||||
"test option",
|
"read-only",
|
||||||
SANE_I18N("Read only test-option"),
|
SANE_I18N("Read only test-option"),
|
||||||
SANE_I18N("Let's see whether frontends can treat this right") ,
|
SANE_I18N("Let's see whether frontends can treat this right") ,
|
||||||
SANE_TYPE_INT,
|
SANE_TYPE_INT,
|
||||||
|
@ -249,7 +284,7 @@ static SANE_Option_Descriptor sod[] =
|
||||||
SANE_CONSTRAINT_NONE,
|
SANE_CONSTRAINT_NONE,
|
||||||
{NULL}
|
{NULL}
|
||||||
},
|
},
|
||||||
{
|
{ /* opt_gamma_group */
|
||||||
"",
|
"",
|
||||||
SANE_I18N("Gamma tables"),
|
SANE_I18N("Gamma tables"),
|
||||||
SANE_I18N("Selection of custom gamma tables."),
|
SANE_I18N("Selection of custom gamma tables."),
|
||||||
|
@ -260,7 +295,7 @@ static SANE_Option_Descriptor sod[] =
|
||||||
SANE_CONSTRAINT_NONE,
|
SANE_CONSTRAINT_NONE,
|
||||||
{NULL}
|
{NULL}
|
||||||
},
|
},
|
||||||
{/* custom-gamma table */
|
{/* opt_custom_gamma */
|
||||||
SANE_NAME_CUSTOM_GAMMA,
|
SANE_NAME_CUSTOM_GAMMA,
|
||||||
SANE_TITLE_CUSTOM_GAMMA ,
|
SANE_TITLE_CUSTOM_GAMMA ,
|
||||||
SANE_DESC_CUSTOM_GAMMA,
|
SANE_DESC_CUSTOM_GAMMA,
|
||||||
|
@ -271,7 +306,7 @@ static SANE_Option_Descriptor sod[] =
|
||||||
SANE_CONSTRAINT_NONE,
|
SANE_CONSTRAINT_NONE,
|
||||||
{NULL}
|
{NULL}
|
||||||
},
|
},
|
||||||
{ /* grayscale gamma vector */
|
{ /* opt_gamma */
|
||||||
SANE_NAME_GAMMA_VECTOR,
|
SANE_NAME_GAMMA_VECTOR,
|
||||||
SANE_TITLE_GAMMA_VECTOR,
|
SANE_TITLE_GAMMA_VECTOR,
|
||||||
SANE_DESC_GAMMA_VECTOR,
|
SANE_DESC_GAMMA_VECTOR,
|
||||||
|
@ -282,7 +317,7 @@ static SANE_Option_Descriptor sod[] =
|
||||||
SANE_CONSTRAINT_RANGE,
|
SANE_CONSTRAINT_RANGE,
|
||||||
{(SANE_String_Const *) &gamma_range}
|
{(SANE_String_Const *) &gamma_range}
|
||||||
},
|
},
|
||||||
{ /* red gamma vector */
|
{ /* opt_gamma_r */
|
||||||
SANE_NAME_GAMMA_VECTOR_R,
|
SANE_NAME_GAMMA_VECTOR_R,
|
||||||
SANE_TITLE_GAMMA_VECTOR_R,
|
SANE_TITLE_GAMMA_VECTOR_R,
|
||||||
SANE_DESC_GAMMA_VECTOR_R,
|
SANE_DESC_GAMMA_VECTOR_R,
|
||||||
|
@ -293,7 +328,7 @@ static SANE_Option_Descriptor sod[] =
|
||||||
SANE_CONSTRAINT_RANGE,
|
SANE_CONSTRAINT_RANGE,
|
||||||
{(SANE_String_Const *) &gamma_range}
|
{(SANE_String_Const *) &gamma_range}
|
||||||
},
|
},
|
||||||
{ /* green gamma vector */
|
{ /* opt_gamma_g */
|
||||||
SANE_NAME_GAMMA_VECTOR_G,
|
SANE_NAME_GAMMA_VECTOR_G,
|
||||||
SANE_TITLE_GAMMA_VECTOR_G,
|
SANE_TITLE_GAMMA_VECTOR_G,
|
||||||
SANE_DESC_GAMMA_VECTOR_G,
|
SANE_DESC_GAMMA_VECTOR_G,
|
||||||
|
@ -304,7 +339,7 @@ static SANE_Option_Descriptor sod[] =
|
||||||
SANE_CONSTRAINT_RANGE,
|
SANE_CONSTRAINT_RANGE,
|
||||||
{(SANE_String_Const *) &gamma_range}
|
{(SANE_String_Const *) &gamma_range}
|
||||||
},
|
},
|
||||||
{ /* blue gamma vector */
|
{ /* opt_gamma_b */
|
||||||
SANE_NAME_GAMMA_VECTOR_B,
|
SANE_NAME_GAMMA_VECTOR_B,
|
||||||
SANE_TITLE_GAMMA_VECTOR_B,
|
SANE_TITLE_GAMMA_VECTOR_B,
|
||||||
SANE_DESC_GAMMA_VECTOR_B,
|
SANE_DESC_GAMMA_VECTOR_B,
|
||||||
|
@ -315,11 +350,11 @@ static SANE_Option_Descriptor sod[] =
|
||||||
SANE_CONSTRAINT_RANGE,
|
SANE_CONSTRAINT_RANGE,
|
||||||
{(SANE_String_Const *) &gamma_range}
|
{(SANE_String_Const *) &gamma_range}
|
||||||
},
|
},
|
||||||
{
|
{ /* opt_status_group */
|
||||||
"",
|
"",
|
||||||
SANE_I18N("Status Code Simulation"),
|
SANE_I18N("Status Code Simulation"),
|
||||||
SANE_I18N("Forces the backend to return a specific status code after a call "
|
SANE_I18N("Forces the backend to return a specific status code after a call "
|
||||||
"to sane_read(). This can be used to test whether a frontend is able"
|
"to sane_read(). This can be used to test whether a frontend is able "
|
||||||
"to treat the status codes correctly."),
|
"to treat the status codes correctly."),
|
||||||
SANE_TYPE_GROUP,
|
SANE_TYPE_GROUP,
|
||||||
SANE_UNIT_NONE,
|
SANE_UNIT_NONE,
|
||||||
|
@ -328,7 +363,7 @@ static SANE_Option_Descriptor sod[] =
|
||||||
SANE_CONSTRAINT_NONE,
|
SANE_CONSTRAINT_NONE,
|
||||||
{NULL}
|
{NULL}
|
||||||
},
|
},
|
||||||
{
|
{ /* opt_status */
|
||||||
"status",
|
"status",
|
||||||
SANE_I18N("Do not force status code"),
|
SANE_I18N("Do not force status code"),
|
||||||
SANE_I18N("Do not force the backend to return a status code."),
|
SANE_I18N("Do not force the backend to return a status code."),
|
||||||
|
@ -339,7 +374,7 @@ static SANE_Option_Descriptor sod[] =
|
||||||
SANE_CONSTRAINT_NONE,
|
SANE_CONSTRAINT_NONE,
|
||||||
{NULL}
|
{NULL}
|
||||||
},
|
},
|
||||||
{
|
{ /* opt_status_eof */
|
||||||
"status-eof",
|
"status-eof",
|
||||||
SANE_I18N("Return SANE_STATUS_EOF"),
|
SANE_I18N("Return SANE_STATUS_EOF"),
|
||||||
SANE_I18N("Force the backend to return the status code SANE_STATUS_EOF after "
|
SANE_I18N("Force the backend to return the status code SANE_STATUS_EOF after "
|
||||||
|
@ -351,7 +386,7 @@ static SANE_Option_Descriptor sod[] =
|
||||||
SANE_CONSTRAINT_NONE,
|
SANE_CONSTRAINT_NONE,
|
||||||
{NULL}
|
{NULL}
|
||||||
},
|
},
|
||||||
{
|
{ /* opt_status_jammed */
|
||||||
"status-jammed",
|
"status-jammed",
|
||||||
SANE_I18N("Return SANE_STATUS_JAMMED"),
|
SANE_I18N("Return SANE_STATUS_JAMMED"),
|
||||||
SANE_I18N("Force the backend to return the status code SANE_STATUS_JAMMED after "
|
SANE_I18N("Force the backend to return the status code SANE_STATUS_JAMMED after "
|
||||||
|
@ -363,7 +398,7 @@ static SANE_Option_Descriptor sod[] =
|
||||||
SANE_CONSTRAINT_NONE,
|
SANE_CONSTRAINT_NONE,
|
||||||
{NULL}
|
{NULL}
|
||||||
},
|
},
|
||||||
{
|
{ /* opt_status_nodocs */
|
||||||
"status-nodocs",
|
"status-nodocs",
|
||||||
SANE_I18N("Return SANE_STATUS_NO_DOCS"),
|
SANE_I18N("Return SANE_STATUS_NO_DOCS"),
|
||||||
SANE_I18N("Force the backend to return the status code SANE_STATUS_NO_DOCS after "
|
SANE_I18N("Force the backend to return the status code SANE_STATUS_NO_DOCS after "
|
||||||
|
@ -375,7 +410,7 @@ static SANE_Option_Descriptor sod[] =
|
||||||
SANE_CONSTRAINT_NONE,
|
SANE_CONSTRAINT_NONE,
|
||||||
{NULL}
|
{NULL}
|
||||||
},
|
},
|
||||||
{
|
{ /* opt_status_coveropen */
|
||||||
"status-coveropen",
|
"status-coveropen",
|
||||||
SANE_I18N("Return SANE_STATUS_COVER_OPEN"),
|
SANE_I18N("Return SANE_STATUS_COVER_OPEN"),
|
||||||
SANE_I18N("Force the backend to return the status code SANE_STATUS_COVER_OPEN after "
|
SANE_I18N("Force the backend to return the status code SANE_STATUS_COVER_OPEN after "
|
||||||
|
@ -387,7 +422,7 @@ static SANE_Option_Descriptor sod[] =
|
||||||
SANE_CONSTRAINT_NONE,
|
SANE_CONSTRAINT_NONE,
|
||||||
{NULL}
|
{NULL}
|
||||||
},
|
},
|
||||||
{
|
{ /* opt_status_ioerror */
|
||||||
"status-ioerror",
|
"status-ioerror",
|
||||||
SANE_I18N("Return SANE_STATUS_IO_ERROR"),
|
SANE_I18N("Return SANE_STATUS_IO_ERROR"),
|
||||||
SANE_I18N("Force the backend to return the status code SANE_STATUS_IO_ERROR after "
|
SANE_I18N("Force the backend to return the status code SANE_STATUS_IO_ERROR after "
|
||||||
|
@ -399,7 +434,7 @@ static SANE_Option_Descriptor sod[] =
|
||||||
SANE_CONSTRAINT_NONE,
|
SANE_CONSTRAINT_NONE,
|
||||||
{NULL}
|
{NULL}
|
||||||
},
|
},
|
||||||
{
|
{ /* opt_status_nomem */
|
||||||
"status-nomem",
|
"status-nomem",
|
||||||
SANE_I18N("Return SANE_STATUS_NO_MEM"),
|
SANE_I18N("Return SANE_STATUS_NO_MEM"),
|
||||||
SANE_I18N("Force the backend to return the status code SANE_STATUS_NO_MEM after "
|
SANE_I18N("Force the backend to return the status code SANE_STATUS_NO_MEM after "
|
||||||
|
@ -411,7 +446,7 @@ static SANE_Option_Descriptor sod[] =
|
||||||
SANE_CONSTRAINT_NONE,
|
SANE_CONSTRAINT_NONE,
|
||||||
{NULL}
|
{NULL}
|
||||||
},
|
},
|
||||||
{
|
{ /* opt_status_accessdenied */
|
||||||
"status-accessdenied",
|
"status-accessdenied",
|
||||||
SANE_I18N("Return SANE_STATUS_ACCESS_DENIED"),
|
SANE_I18N("Return SANE_STATUS_ACCESS_DENIED"),
|
||||||
SANE_I18N("Force the backend to return the status code SANE_STATUS_ACCESS_DENIED "
|
SANE_I18N("Force the backend to return the status code SANE_STATUS_ACCESS_DENIED "
|
||||||
|
@ -569,7 +604,7 @@ sane_control_option (SANE_Handle handle, SANE_Int option,
|
||||||
return status;
|
return status;
|
||||||
switch (option)
|
switch (option)
|
||||||
{
|
{
|
||||||
case 3:
|
case opt_resolution:
|
||||||
res = 75;
|
res = 75;
|
||||||
myinfo |= SANE_INFO_RELOAD_PARAMS;
|
myinfo |= SANE_INFO_RELOAD_PARAMS;
|
||||||
break;
|
break;
|
||||||
|
@ -583,109 +618,110 @@ sane_control_option (SANE_Handle handle, SANE_Int option,
|
||||||
return status;
|
return status;
|
||||||
switch (option)
|
switch (option)
|
||||||
{
|
{
|
||||||
case 2:
|
case opt_filename:
|
||||||
if ((strlen (value) + 1) > sizeof (filename))
|
if ((strlen (value) + 1) > sizeof (filename))
|
||||||
return SANE_STATUS_NO_MEM;
|
return SANE_STATUS_NO_MEM;
|
||||||
strcpy (filename, value);
|
strcpy (filename, value);
|
||||||
myinfo |= SANE_INFO_RELOAD_PARAMS;
|
myinfo |= SANE_INFO_RELOAD_PARAMS;
|
||||||
break;
|
break;
|
||||||
case 3:
|
case opt_resolution:
|
||||||
res = *(SANE_Word *) value;
|
res = *(SANE_Word *) value;
|
||||||
break;
|
break;
|
||||||
case 5:
|
case opt_brightness:
|
||||||
bright = *(SANE_Word *) value;
|
bright = *(SANE_Word *) value;
|
||||||
break;
|
break;
|
||||||
case 6:
|
case opt_contrast:
|
||||||
contr = *(SANE_Word *) value;
|
contr = *(SANE_Word *) value;
|
||||||
break;
|
break;
|
||||||
case 7:
|
case opt_grayify:
|
||||||
gray = !!*(SANE_Word *) value;
|
gray = !!*(SANE_Word *) value;
|
||||||
if (usegamma)
|
if (usegamma)
|
||||||
{
|
{
|
||||||
if (gray)
|
if (gray)
|
||||||
{
|
{
|
||||||
sod[14].cap &= ~SANE_CAP_INACTIVE;
|
sod[opt_gamma].cap &= ~SANE_CAP_INACTIVE;
|
||||||
sod[15].cap |= SANE_CAP_INACTIVE;
|
sod[opt_gamma_r].cap |= SANE_CAP_INACTIVE;
|
||||||
sod[16].cap |= SANE_CAP_INACTIVE;
|
sod[opt_gamma_g].cap |= SANE_CAP_INACTIVE;
|
||||||
sod[17].cap |= SANE_CAP_INACTIVE;
|
sod[opt_gamma_b].cap |= SANE_CAP_INACTIVE;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
sod[14].cap |= SANE_CAP_INACTIVE;
|
sod[opt_gamma].cap |= SANE_CAP_INACTIVE;
|
||||||
sod[15].cap &= ~SANE_CAP_INACTIVE;
|
sod[opt_gamma_r].cap &= ~SANE_CAP_INACTIVE;
|
||||||
sod[16].cap &= ~SANE_CAP_INACTIVE;
|
sod[opt_gamma_g].cap &= ~SANE_CAP_INACTIVE;
|
||||||
sod[17].cap &= ~SANE_CAP_INACTIVE;
|
sod[opt_gamma_b].cap &= ~SANE_CAP_INACTIVE;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
sod[14].cap |= SANE_CAP_INACTIVE;
|
sod[opt_gamma].cap |= SANE_CAP_INACTIVE;
|
||||||
sod[15].cap |= SANE_CAP_INACTIVE;
|
sod[opt_gamma_r].cap |= SANE_CAP_INACTIVE;
|
||||||
sod[16].cap |= SANE_CAP_INACTIVE;
|
sod[opt_gamma_g].cap |= SANE_CAP_INACTIVE;
|
||||||
sod[17].cap |= SANE_CAP_INACTIVE;
|
sod[opt_gamma_b].cap |= SANE_CAP_INACTIVE;
|
||||||
}
|
}
|
||||||
myinfo |= SANE_INFO_RELOAD_PARAMS | SANE_INFO_RELOAD_OPTIONS;
|
myinfo |= SANE_INFO_RELOAD_PARAMS | SANE_INFO_RELOAD_OPTIONS;
|
||||||
break;
|
break;
|
||||||
case 8:
|
case opt_three_pass:
|
||||||
three_pass = !!*(SANE_Word *) value;
|
three_pass = !!*(SANE_Word *) value;
|
||||||
|
myinfo |= SANE_INFO_RELOAD_PARAMS;
|
||||||
break;
|
break;
|
||||||
case 9:
|
case opt_hand_scanner:
|
||||||
hand_scanner = !!*(SANE_Word *) value;
|
hand_scanner = !!*(SANE_Word *) value;
|
||||||
|
myinfo |= SANE_INFO_RELOAD_PARAMS;
|
||||||
break;
|
break;
|
||||||
case 10:
|
case opt_default_enhancements:
|
||||||
bright = contr = 0;
|
bright = contr = 0;
|
||||||
myinfo |= SANE_INFO_RELOAD_OPTIONS;
|
myinfo |= SANE_INFO_RELOAD_OPTIONS;
|
||||||
break;
|
break;
|
||||||
/*gamma stuff*/
|
case opt_custom_gamma:
|
||||||
case 13:/*usegamma*/
|
|
||||||
usegamma = *(SANE_Word *) value;
|
usegamma = *(SANE_Word *) value;
|
||||||
/*activate/deactivate gamma*/
|
/* activate/deactivate gamma */
|
||||||
if(usegamma)
|
if (usegamma)
|
||||||
{
|
{
|
||||||
test_option = 100;
|
test_option = 100;
|
||||||
if(gray)
|
if(gray)
|
||||||
{
|
{
|
||||||
sod[14].cap &= ~SANE_CAP_INACTIVE;
|
sod[opt_gamma].cap &= ~SANE_CAP_INACTIVE;
|
||||||
sod[15].cap |= SANE_CAP_INACTIVE;
|
sod[opt_gamma_r].cap |= SANE_CAP_INACTIVE;
|
||||||
sod[16].cap |= SANE_CAP_INACTIVE;
|
sod[opt_gamma_g].cap |= SANE_CAP_INACTIVE;
|
||||||
sod[17].cap |= SANE_CAP_INACTIVE;
|
sod[opt_gamma_b].cap |= SANE_CAP_INACTIVE;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
sod[14].cap |= SANE_CAP_INACTIVE;
|
sod[opt_gamma].cap |= SANE_CAP_INACTIVE;
|
||||||
sod[15].cap &= ~SANE_CAP_INACTIVE;
|
sod[opt_gamma_r].cap &= ~SANE_CAP_INACTIVE;
|
||||||
sod[16].cap &= ~SANE_CAP_INACTIVE;
|
sod[opt_gamma_g].cap &= ~SANE_CAP_INACTIVE;
|
||||||
sod[17].cap &= ~SANE_CAP_INACTIVE;
|
sod[opt_gamma_b].cap &= ~SANE_CAP_INACTIVE;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
test_option = 0;
|
test_option = 0;
|
||||||
sod[14].cap |= SANE_CAP_INACTIVE;
|
sod[opt_gamma].cap |= SANE_CAP_INACTIVE;
|
||||||
sod[15].cap |= SANE_CAP_INACTIVE;
|
sod[opt_gamma_r].cap |= SANE_CAP_INACTIVE;
|
||||||
sod[16].cap |= SANE_CAP_INACTIVE;
|
sod[opt_gamma_g].cap |= SANE_CAP_INACTIVE;
|
||||||
sod[17].cap |= SANE_CAP_INACTIVE;
|
sod[opt_gamma_b].cap |= SANE_CAP_INACTIVE;
|
||||||
}
|
}
|
||||||
myinfo |= SANE_INFO_RELOAD_OPTIONS;
|
myinfo |= SANE_INFO_RELOAD_OPTIONS;
|
||||||
break;
|
break;
|
||||||
case 14:
|
case opt_gamma:
|
||||||
memcpy(&gamma[0][0], (SANE_Word *) value, 256*sizeof(SANE_Word));
|
memcpy (&gamma[0][0], (SANE_Word *) value, 256 * sizeof(SANE_Word));
|
||||||
myinfo |= SANE_INFO_RELOAD_OPTIONS;
|
myinfo |= SANE_INFO_RELOAD_OPTIONS;
|
||||||
break;
|
break;
|
||||||
case 15:
|
case opt_gamma_r:
|
||||||
memcpy(&gamma[1][0], (SANE_Word *) value, 256*sizeof(SANE_Word));
|
memcpy (&gamma[1][0], (SANE_Word *) value, 256 * sizeof(SANE_Word));
|
||||||
myinfo |= SANE_INFO_RELOAD_OPTIONS;
|
myinfo |= SANE_INFO_RELOAD_OPTIONS;
|
||||||
break;
|
break;
|
||||||
case 16:
|
case opt_gamma_g:
|
||||||
memcpy(&gamma[2][0], (SANE_Word *) value, 256*sizeof(SANE_Word));
|
memcpy (&gamma[2][0], (SANE_Word *) value, 256 * sizeof(SANE_Word));
|
||||||
myinfo |= SANE_INFO_RELOAD_OPTIONS;
|
myinfo |= SANE_INFO_RELOAD_OPTIONS;
|
||||||
break;
|
break;
|
||||||
case 17:
|
case opt_gamma_b:
|
||||||
memcpy(&gamma[3][0], (SANE_Word *) value, 256*sizeof(SANE_Word));
|
memcpy (&gamma[3][0], (SANE_Word *) value, 256 * sizeof(SANE_Word));
|
||||||
myinfo |= SANE_INFO_RELOAD_OPTIONS;
|
myinfo |= SANE_INFO_RELOAD_OPTIONS;
|
||||||
break;
|
break;
|
||||||
/*status*/
|
/* status */
|
||||||
case 19:
|
case opt_status:
|
||||||
status_none = *(SANE_Word *) value;
|
status_none = *(SANE_Word *) value;
|
||||||
if (status_none)
|
if (status_none)
|
||||||
{
|
{
|
||||||
|
@ -699,9 +735,9 @@ sane_control_option (SANE_Handle handle, SANE_Int option,
|
||||||
}
|
}
|
||||||
myinfo |= SANE_INFO_RELOAD_OPTIONS;
|
myinfo |= SANE_INFO_RELOAD_OPTIONS;
|
||||||
break;
|
break;
|
||||||
case 20:
|
case opt_status_eof:
|
||||||
status_eof = *(SANE_Word *) value;
|
status_eof = *(SANE_Word *) value;
|
||||||
if(status_eof)
|
if (status_eof)
|
||||||
{
|
{
|
||||||
status_none = SANE_FALSE;
|
status_none = SANE_FALSE;
|
||||||
status_jammed = SANE_FALSE;
|
status_jammed = SANE_FALSE;
|
||||||
|
@ -713,7 +749,7 @@ sane_control_option (SANE_Handle handle, SANE_Int option,
|
||||||
}
|
}
|
||||||
myinfo |= SANE_INFO_RELOAD_OPTIONS;
|
myinfo |= SANE_INFO_RELOAD_OPTIONS;
|
||||||
break;
|
break;
|
||||||
case 21:
|
case opt_status_jammed:
|
||||||
status_jammed = *(SANE_Word *) value;
|
status_jammed = *(SANE_Word *) value;
|
||||||
if (status_jammed)
|
if (status_jammed)
|
||||||
{
|
{
|
||||||
|
@ -727,7 +763,7 @@ sane_control_option (SANE_Handle handle, SANE_Int option,
|
||||||
}
|
}
|
||||||
myinfo |= SANE_INFO_RELOAD_OPTIONS;
|
myinfo |= SANE_INFO_RELOAD_OPTIONS;
|
||||||
break;
|
break;
|
||||||
case 22:
|
case opt_status_nodocs:
|
||||||
status_nodocs = *(SANE_Word *) value;
|
status_nodocs = *(SANE_Word *) value;
|
||||||
if (status_nodocs)
|
if (status_nodocs)
|
||||||
{
|
{
|
||||||
|
@ -741,7 +777,7 @@ sane_control_option (SANE_Handle handle, SANE_Int option,
|
||||||
}
|
}
|
||||||
myinfo |= SANE_INFO_RELOAD_OPTIONS;
|
myinfo |= SANE_INFO_RELOAD_OPTIONS;
|
||||||
break;
|
break;
|
||||||
case 23:
|
case opt_status_coveropen:
|
||||||
status_coveropen = *(SANE_Word *) value;
|
status_coveropen = *(SANE_Word *) value;
|
||||||
if (status_coveropen)
|
if (status_coveropen)
|
||||||
{
|
{
|
||||||
|
@ -755,7 +791,7 @@ sane_control_option (SANE_Handle handle, SANE_Int option,
|
||||||
}
|
}
|
||||||
myinfo |= SANE_INFO_RELOAD_OPTIONS;
|
myinfo |= SANE_INFO_RELOAD_OPTIONS;
|
||||||
break;
|
break;
|
||||||
case 24:
|
case opt_status_ioerror:
|
||||||
status_ioerror = *(SANE_Word *) value;
|
status_ioerror = *(SANE_Word *) value;
|
||||||
if (status_ioerror)
|
if (status_ioerror)
|
||||||
{
|
{
|
||||||
|
@ -769,7 +805,7 @@ sane_control_option (SANE_Handle handle, SANE_Int option,
|
||||||
}
|
}
|
||||||
myinfo |= SANE_INFO_RELOAD_OPTIONS;
|
myinfo |= SANE_INFO_RELOAD_OPTIONS;
|
||||||
break;
|
break;
|
||||||
case 25:
|
case opt_status_nomem:
|
||||||
status_nomem = *(SANE_Word *) value;
|
status_nomem = *(SANE_Word *) value;
|
||||||
if (status_nomem)
|
if (status_nomem)
|
||||||
{
|
{
|
||||||
|
@ -783,7 +819,7 @@ sane_control_option (SANE_Handle handle, SANE_Int option,
|
||||||
}
|
}
|
||||||
myinfo |= SANE_INFO_RELOAD_OPTIONS;
|
myinfo |= SANE_INFO_RELOAD_OPTIONS;
|
||||||
break;
|
break;
|
||||||
case 26:
|
case opt_status_accessdenied:
|
||||||
status_accessdenied = *(SANE_Word *) value;
|
status_accessdenied = *(SANE_Word *) value;
|
||||||
if (status_accessdenied)
|
if (status_accessdenied)
|
||||||
{
|
{
|
||||||
|
@ -804,71 +840,70 @@ sane_control_option (SANE_Handle handle, SANE_Int option,
|
||||||
case SANE_ACTION_GET_VALUE:
|
case SANE_ACTION_GET_VALUE:
|
||||||
switch (option)
|
switch (option)
|
||||||
{
|
{
|
||||||
case 0:
|
case opt_num_opts:
|
||||||
*(SANE_Word *) value = NELEMS(sod);
|
*(SANE_Word *) value = NELEMS(sod);
|
||||||
break;
|
break;
|
||||||
case 2:
|
case opt_filename:
|
||||||
strcpy (value, filename);
|
strcpy (value, filename);
|
||||||
break;
|
break;
|
||||||
case 3:
|
case opt_resolution:
|
||||||
*(SANE_Word *) value = res;
|
*(SANE_Word *) value = res;
|
||||||
break;
|
break;
|
||||||
case 5:
|
case opt_brightness:
|
||||||
*(SANE_Word *) value = bright;
|
*(SANE_Word *) value = bright;
|
||||||
break;
|
break;
|
||||||
case 6:
|
case opt_contrast:
|
||||||
*(SANE_Word *) value = contr;
|
*(SANE_Word *) value = contr;
|
||||||
break;
|
break;
|
||||||
case 7:
|
case opt_grayify:
|
||||||
*(SANE_Word *) value = gray;
|
*(SANE_Word *) value = gray;
|
||||||
break;
|
break;
|
||||||
case 8:
|
case opt_three_pass:
|
||||||
*(SANE_Word *) value = three_pass;
|
*(SANE_Word *) value = three_pass;
|
||||||
break;
|
break;
|
||||||
case 9:
|
case opt_hand_scanner:
|
||||||
*(SANE_Word *) value = hand_scanner;
|
*(SANE_Word *) value = hand_scanner;
|
||||||
break;
|
break;
|
||||||
case 11:
|
case opt_read_only:
|
||||||
*(SANE_Word *) value = test_option;
|
*(SANE_Word *) value = test_option;
|
||||||
break;
|
break;
|
||||||
case 13:
|
case opt_custom_gamma:
|
||||||
*(SANE_Word *) value = usegamma;
|
*(SANE_Word *) value = usegamma;
|
||||||
break;
|
break;
|
||||||
case 14:
|
case opt_gamma:
|
||||||
memcpy((SANE_Word *) value, &gamma[0][0], 256*sizeof(SANE_Word));
|
memcpy((SANE_Word *) value, &gamma[0][0], 256*sizeof(SANE_Word));
|
||||||
break;
|
break;
|
||||||
case 15:
|
case opt_gamma_r:
|
||||||
memcpy((SANE_Word *) value, &gamma[1][0], 256*sizeof(SANE_Word));
|
memcpy((SANE_Word *) value, &gamma[1][0], 256*sizeof(SANE_Word));
|
||||||
break;
|
break;
|
||||||
case 16:
|
case opt_gamma_g:
|
||||||
memcpy((SANE_Word *) value, &gamma[2][0], 256*sizeof(SANE_Word));
|
memcpy((SANE_Word *) value, &gamma[2][0], 256*sizeof(SANE_Word));
|
||||||
break;
|
break;
|
||||||
case 17:
|
case opt_gamma_b:
|
||||||
memcpy((SANE_Word *) value, &gamma[3][0], 256*sizeof(SANE_Word));
|
memcpy((SANE_Word *) value, &gamma[3][0], 256*sizeof(SANE_Word));
|
||||||
break;
|
break;
|
||||||
/*status*/
|
case opt_status:
|
||||||
case 19:
|
|
||||||
*(SANE_Word *) value = status_none;
|
*(SANE_Word *) value = status_none;
|
||||||
break;
|
break;
|
||||||
case 20:
|
case opt_status_eof:
|
||||||
*(SANE_Word *) value = status_eof;
|
*(SANE_Word *) value = status_eof;
|
||||||
break;
|
break;
|
||||||
case 21:
|
case opt_status_jammed:
|
||||||
*(SANE_Word *) value = status_jammed;
|
*(SANE_Word *) value = status_jammed;
|
||||||
break;
|
break;
|
||||||
case 22:
|
case opt_status_nodocs:
|
||||||
*(SANE_Word *) value = status_nodocs;
|
*(SANE_Word *) value = status_nodocs;
|
||||||
break;
|
break;
|
||||||
case 23:
|
case opt_status_coveropen:
|
||||||
*(SANE_Word *) value = status_coveropen;
|
*(SANE_Word *) value = status_coveropen;
|
||||||
break;
|
break;
|
||||||
case 24:
|
case opt_status_ioerror:
|
||||||
*(SANE_Word *) value = status_ioerror;
|
*(SANE_Word *) value = status_ioerror;
|
||||||
break;
|
break;
|
||||||
case 25:
|
case opt_status_nomem:
|
||||||
*(SANE_Word *) value = status_nomem;
|
*(SANE_Word *) value = status_nomem;
|
||||||
break;
|
break;
|
||||||
case 26:
|
case opt_status_accessdenied:
|
||||||
*(SANE_Word *) value = status_accessdenied;
|
*(SANE_Word *) value = status_accessdenied;
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
:backend "pnm"
|
:backend "pnm"
|
||||||
:version "1.0.2"
|
:version "1.0.3"
|
||||||
:status :beta
|
:status :beta
|
||||||
:manpage "sane-pnm"
|
:manpage "sane-pnm"
|
||||||
:url "mailto:henning@meier-geinitz.de"
|
:url "mailto:henning@meier-geinitz.de"
|
||||||
|
|
105
po/pnm.de.po
105
po/pnm.de.po
|
@ -4,7 +4,7 @@
|
||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: sane-backends 1.0.7\n"
|
"Project-Id-Version: sane-backends 1.0.7\n"
|
||||||
"POT-Creation-Date: 2002-01-09 16:00+0100\n"
|
"POT-Creation-Date: 2002-01-11 19:24+0100\n"
|
||||||
"PO-Revision-Date: 2002-01-09 14:46+0100\n"
|
"PO-Revision-Date: 2002-01-09 14:46+0100\n"
|
||||||
"Last-Translator: Henning Meier-Geinitz <henning@meier-geinitz.de>\n"
|
"Last-Translator: Henning Meier-Geinitz <henning@meier-geinitz.de>\n"
|
||||||
"Language-Team: \n"
|
"Language-Team: \n"
|
||||||
|
@ -12,45 +12,47 @@ msgstr ""
|
||||||
"Content-Type: text/plain; charset=iso-8859-1\n"
|
"Content-Type: text/plain; charset=iso-8859-1\n"
|
||||||
"Content-Transfer-Encoding: 8bit\n"
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
|
||||||
#: .tmp/pnm.c:129
|
#: .tmp/pnm.c:164
|
||||||
msgid "Source Selection"
|
msgid "Source Selection"
|
||||||
msgstr "Dateiauswahl"
|
msgstr "Dateiauswahl"
|
||||||
|
|
||||||
#: .tmp/pnm.c:130
|
#: .tmp/pnm.c:165
|
||||||
msgid "Selection of the file to load."
|
msgid "Selection of the file to load."
|
||||||
msgstr "Auswahl der zu ladenden Datei"
|
msgstr "Auswahl der zu ladenden Datei"
|
||||||
|
|
||||||
#: .tmp/pnm.c:163
|
#: .tmp/pnm.c:198
|
||||||
msgid "Image Enhancement"
|
msgid "Image Enhancement"
|
||||||
msgstr "Bildkorrektur"
|
msgstr "Bildkorrektur"
|
||||||
|
|
||||||
#: .tmp/pnm.c:164
|
#: .tmp/pnm.c:199
|
||||||
msgid "A few controls to enhance image while loading"
|
msgid "A few controls to enhance image while loading"
|
||||||
msgstr "Einige Einstellungen zur Verbesserung des Bildes während des Ladens"
|
msgstr "Einige Einstellungen zur Verbesserung des Bildes während des Ladens"
|
||||||
|
|
||||||
#: .tmp/pnm.c:196
|
#: .tmp/pnm.c:231
|
||||||
msgid "Grayify"
|
msgid "Grayify"
|
||||||
msgstr "Graustufen"
|
msgstr "Graustufen"
|
||||||
|
|
||||||
#: .tmp/pnm.c:197
|
#: .tmp/pnm.c:232
|
||||||
msgid "Load the image as grayscale."
|
msgid "Load the image as grayscale."
|
||||||
msgstr "Bild in Graustufen laden."
|
msgstr "Bild in Graustufen laden."
|
||||||
|
|
||||||
#: .tmp/pnm.c:207
|
#: .tmp/pnm.c:242
|
||||||
msgid "Three-Pass Simulation"
|
msgid "Three-Pass Simulation"
|
||||||
msgstr "Three-Pass Simulation"
|
msgstr "Three-Pass Simulation"
|
||||||
|
|
||||||
#: .tmp/pnm.c:208
|
#: .tmp/pnm.c:243
|
||||||
msgid ""
|
msgid ""
|
||||||
"Simulate a three-pass scanner by returning 3 separate frames. For kicks, it "
|
"Simulate a three-pass scanner by returning 3 separate frames. For kicks, it "
|
||||||
"returns green, then blue, then red."
|
"returns green, then blue, then red."
|
||||||
msgstr "Simuliere einen Three-Pass Scanner, indem hintereinander je ein Frame für jede Grundfarbe übertragen wird. Die Reihenfolge ist grün-blau-rot."
|
msgstr ""
|
||||||
|
"Simuliere einen Three-Pass Scanner, indem hintereinander je ein Frame für "
|
||||||
|
"jede Grundfarbe übertragen wird. Die Reihenfolge ist grün-blau-rot."
|
||||||
|
|
||||||
#: .tmp/pnm.c:219
|
#: .tmp/pnm.c:254
|
||||||
msgid "Hand-Scanner Simulation"
|
msgid "Hand-Scanner Simulation"
|
||||||
msgstr "Handscanner Simulation"
|
msgstr "Handscanner Simulation"
|
||||||
|
|
||||||
#: .tmp/pnm.c:220
|
#: .tmp/pnm.c:255
|
||||||
msgid ""
|
msgid ""
|
||||||
"Simulate a hand-scanner. Hand-scanners often do not know the image height a "
|
"Simulate a hand-scanner. Hand-scanners often do not know the image height a "
|
||||||
"priori. Instead, they return a height of -1. Setting this option allows to "
|
"priori. Instead, they return a height of -1. Setting this option allows to "
|
||||||
|
@ -61,66 +63,72 @@ msgstr ""
|
||||||
"Mit dieser Option kann man prüfen, ob das Frontend damit richtig umgehen "
|
"Mit dieser Option kann man prüfen, ob das Frontend damit richtig umgehen "
|
||||||
"kann."
|
"kann."
|
||||||
|
|
||||||
#: .tmp/pnm.c:232
|
#: .tmp/pnm.c:267
|
||||||
msgid "Defaults"
|
msgid "Defaults"
|
||||||
msgstr "Defaulteinstellungen"
|
msgstr "Defaulteinstellungen"
|
||||||
|
|
||||||
#: .tmp/pnm.c:233
|
#: .tmp/pnm.c:268
|
||||||
msgid "Set default values for enhancement controls (brightness & contrast)."
|
msgid "Set default values for enhancement controls (brightness & contrast)."
|
||||||
msgstr "Stellt die Farbverbesserungseinstellungen (Helligkeit und Kontrast) auf Defaultwerte."
|
msgstr ""
|
||||||
|
"Stellt die Farbverbesserungseinstellungen (Helligkeit und Kontrast) auf "
|
||||||
|
"Defaultwerte."
|
||||||
|
|
||||||
#: .tmp/pnm.c:243
|
#: .tmp/pnm.c:278
|
||||||
msgid "Read only test-option"
|
msgid "Read only test-option"
|
||||||
msgstr "Nur-Lese-Testoption"
|
msgstr "Nur-Lese-Testoption"
|
||||||
|
|
||||||
#: .tmp/pnm.c:244
|
#: .tmp/pnm.c:279
|
||||||
msgid "Let's see whether frontends can treat this right"
|
msgid "Let's see whether frontends can treat this right"
|
||||||
msgstr "Mal sehen, ob das Frontend damit umgehen kann."
|
msgstr "Mal sehen, ob das Frontend damit umgehen kann."
|
||||||
|
|
||||||
#: .tmp/pnm.c:254
|
#: .tmp/pnm.c:289
|
||||||
msgid "Gamma tables"
|
msgid "Gamma tables"
|
||||||
msgstr "Gammatabellen"
|
msgstr "Gammatabellen"
|
||||||
|
|
||||||
#: .tmp/pnm.c:255
|
#: .tmp/pnm.c:290
|
||||||
msgid "Selection of custom gamma tables."
|
msgid "Selection of custom gamma tables."
|
||||||
msgstr "Auswahl der benutzerdefinierten Gammatabellen."
|
msgstr "Auswahl der benutzerdefinierten Gammatabellen."
|
||||||
|
|
||||||
#: .tmp/pnm.c:320
|
#: .tmp/pnm.c:355
|
||||||
msgid "Status Code Simulation"
|
msgid "Status Code Simulation"
|
||||||
msgstr "Statuscode Simulation"
|
msgstr "Statuscode Simulation"
|
||||||
|
|
||||||
#: .tmp/pnm.c:321
|
#: .tmp/pnm.c:356
|
||||||
|
#, fuzzy
|
||||||
msgid ""
|
msgid ""
|
||||||
"Forces the backend to return a specific status code after a call to "
|
"Forces the backend to return a specific status code after a call to sane_read"
|
||||||
"sane_read(). This can be used to test whether a frontend is ableto treat the "
|
"(). This can be used to test whether a frontend is able to treat the status "
|
||||||
"status codes correctly."
|
"codes correctly."
|
||||||
msgstr "Zwingt das Backend, einen bestimmten Statuscode nach dem Aufruf von sane_read() zurückzuliefern. Damit kann man prüfen, ob ein Frontend die Statuscodes richtig behandeln kann."
|
msgstr ""
|
||||||
|
"Zwingt das Backend, einen bestimmten Statuscode nach dem Aufruf von sane_read"
|
||||||
|
"() zurückzuliefern. Damit kann man prüfen, ob ein Frontend die Statuscodes "
|
||||||
|
"richtig behandeln kann."
|
||||||
|
|
||||||
#: .tmp/pnm.c:333
|
#: .tmp/pnm.c:368
|
||||||
msgid "Do not force status code"
|
msgid "Do not force status code"
|
||||||
msgstr "Keinen Statuscode erzwingen"
|
msgstr "Keinen Statuscode erzwingen"
|
||||||
|
|
||||||
#: .tmp/pnm.c:334
|
#: .tmp/pnm.c:369
|
||||||
msgid "Do not force the backend to return a status code."
|
msgid "Do not force the backend to return a status code."
|
||||||
msgstr "Zwinge das Backend nicht dazu, einen Statuscode zurückzuliefern."
|
msgstr "Zwinge das Backend nicht dazu, einen Statuscode zurückzuliefern."
|
||||||
|
|
||||||
#: .tmp/pnm.c:344
|
#: .tmp/pnm.c:379
|
||||||
msgid "Return SANE_STATUS_EOF"
|
msgid "Return SANE_STATUS_EOF"
|
||||||
msgstr "Liefere SANE_STATUS_EOF zurück"
|
msgstr "Liefere SANE_STATUS_EOF zurück"
|
||||||
|
|
||||||
#: .tmp/pnm.c:345
|
#: .tmp/pnm.c:380
|
||||||
msgid ""
|
msgid ""
|
||||||
"Force the backend to return the status code SANE_STATUS_EOF after "
|
"Force the backend to return the status code SANE_STATUS_EOF after sane_read"
|
||||||
"sane_read() has been called."
|
"() has been called."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Zwinge das Backend dazu, nach einem Aufruf von sane_read() den Statuscode "
|
"Zwinge das Backend dazu, nach einem Aufruf von sane_read() den Statuscode "
|
||||||
"SANE_STATUS_EOF zurückzuliefern."
|
"SANE_STATUS_EOF zurückzuliefern."
|
||||||
|
|
||||||
#: .tmp/pnm.c:356
|
#: .tmp/pnm.c:391
|
||||||
msgid "Return SANE_STATUS_JAMMED"
|
msgid "Return SANE_STATUS_JAMMED"
|
||||||
msgstr "Liefere SANE_STATUS_JAMMED zurück"
|
msgstr "Liefere SANE_STATUS_JAMMED zurück"
|
||||||
|
|
||||||
#: .tmp/pnm.c:357
|
#: .tmp/pnm.c:392
|
||||||
msgid ""
|
msgid ""
|
||||||
"Force the backend to return the status code SANE_STATUS_JAMMED after "
|
"Force the backend to return the status code SANE_STATUS_JAMMED after "
|
||||||
"sane_read() has been called."
|
"sane_read() has been called."
|
||||||
|
@ -128,11 +136,11 @@ msgstr ""
|
||||||
"Zwinge das Backend dazu, nach einem Aufruf von sane_read() den Statuscode "
|
"Zwinge das Backend dazu, nach einem Aufruf von sane_read() den Statuscode "
|
||||||
"SANE_STATUS_JAMMED zurückzuliefern."
|
"SANE_STATUS_JAMMED zurückzuliefern."
|
||||||
|
|
||||||
#: .tmp/pnm.c:368
|
#: .tmp/pnm.c:403
|
||||||
msgid "Return SANE_STATUS_NO_DOCS"
|
msgid "Return SANE_STATUS_NO_DOCS"
|
||||||
msgstr "Liefere SANE_STATUS_NO_DOCS zurück"
|
msgstr "Liefere SANE_STATUS_NO_DOCS zurück"
|
||||||
|
|
||||||
#: .tmp/pnm.c:369
|
#: .tmp/pnm.c:404
|
||||||
msgid ""
|
msgid ""
|
||||||
"Force the backend to return the status code SANE_STATUS_NO_DOCS after "
|
"Force the backend to return the status code SANE_STATUS_NO_DOCS after "
|
||||||
"sane_read() has been called."
|
"sane_read() has been called."
|
||||||
|
@ -140,11 +148,11 @@ msgstr ""
|
||||||
"Zwinge das Backend dazu, nach einem Aufruf von sane_read() den Statuscode "
|
"Zwinge das Backend dazu, nach einem Aufruf von sane_read() den Statuscode "
|
||||||
"SANE_STATUS_NO_DOCS zurückzuliefern."
|
"SANE_STATUS_NO_DOCS zurückzuliefern."
|
||||||
|
|
||||||
#: .tmp/pnm.c:380
|
#: .tmp/pnm.c:415
|
||||||
msgid "Return SANE_STATUS_COVER_OPEN"
|
msgid "Return SANE_STATUS_COVER_OPEN"
|
||||||
msgstr "Liefere SANE_STATUS_COVER_OPEN zurück"
|
msgstr "Liefere SANE_STATUS_COVER_OPEN zurück"
|
||||||
|
|
||||||
#: .tmp/pnm.c:381
|
#: .tmp/pnm.c:416
|
||||||
msgid ""
|
msgid ""
|
||||||
"Force the backend to return the status code SANE_STATUS_COVER_OPEN after "
|
"Force the backend to return the status code SANE_STATUS_COVER_OPEN after "
|
||||||
"sane_read() has been called."
|
"sane_read() has been called."
|
||||||
|
@ -152,11 +160,11 @@ msgstr ""
|
||||||
"Zwinge das Backend dazu, nach einem Aufruf von sane_read() den Statuscode "
|
"Zwinge das Backend dazu, nach einem Aufruf von sane_read() den Statuscode "
|
||||||
"SANE_STATUS_COVER_OPEN zurückzuliefern."
|
"SANE_STATUS_COVER_OPEN zurückzuliefern."
|
||||||
|
|
||||||
#: .tmp/pnm.c:392
|
#: .tmp/pnm.c:427
|
||||||
msgid "Return SANE_STATUS_IO_ERROR"
|
msgid "Return SANE_STATUS_IO_ERROR"
|
||||||
msgstr "Liefere SANE_STATUS_IO_ERROR zurück"
|
msgstr "Liefere SANE_STATUS_IO_ERROR zurück"
|
||||||
|
|
||||||
#: .tmp/pnm.c:393
|
#: .tmp/pnm.c:428
|
||||||
msgid ""
|
msgid ""
|
||||||
"Force the backend to return the status code SANE_STATUS_IO_ERROR after "
|
"Force the backend to return the status code SANE_STATUS_IO_ERROR after "
|
||||||
"sane_read() has been called."
|
"sane_read() has been called."
|
||||||
|
@ -164,11 +172,11 @@ msgstr ""
|
||||||
"Zwinge das Backend dazu, nach einem Aufruf von sane_read() den Statuscode "
|
"Zwinge das Backend dazu, nach einem Aufruf von sane_read() den Statuscode "
|
||||||
"SANE_STATUS_IO_ERROR zurückzuliefern."
|
"SANE_STATUS_IO_ERROR zurückzuliefern."
|
||||||
|
|
||||||
#: .tmp/pnm.c:404
|
#: .tmp/pnm.c:439
|
||||||
msgid "Return SANE_STATUS_NO_MEM"
|
msgid "Return SANE_STATUS_NO_MEM"
|
||||||
msgstr "Liefere SANE_STATUS_NO_MEM zurück"
|
msgstr "Liefere SANE_STATUS_NO_MEM zurück"
|
||||||
|
|
||||||
#: .tmp/pnm.c:405
|
#: .tmp/pnm.c:440
|
||||||
msgid ""
|
msgid ""
|
||||||
"Force the backend to return the status code SANE_STATUS_NO_MEM after "
|
"Force the backend to return the status code SANE_STATUS_NO_MEM after "
|
||||||
"sane_read() has been called."
|
"sane_read() has been called."
|
||||||
|
@ -176,11 +184,11 @@ msgstr ""
|
||||||
"Zwinge das Backend dazu, nach einem Aufruf von sane_read() den Statuscode "
|
"Zwinge das Backend dazu, nach einem Aufruf von sane_read() den Statuscode "
|
||||||
"SANE_STATUS_NO_MEM zurückzuliefern."
|
"SANE_STATUS_NO_MEM zurückzuliefern."
|
||||||
|
|
||||||
#: .tmp/pnm.c:416
|
#: .tmp/pnm.c:451
|
||||||
msgid "Return SANE_STATUS_ACCESS_DENIED"
|
msgid "Return SANE_STATUS_ACCESS_DENIED"
|
||||||
msgstr "Liefere SANE_STATUS_ACCESS_DENIED zurück"
|
msgstr "Liefere SANE_STATUS_ACCESS_DENIED zurück"
|
||||||
|
|
||||||
#: .tmp/pnm.c:417
|
#: .tmp/pnm.c:452
|
||||||
msgid ""
|
msgid ""
|
||||||
"Force the backend to return the status code SANE_STATUS_ACCESS_DENIED after "
|
"Force the backend to return the status code SANE_STATUS_ACCESS_DENIED after "
|
||||||
"sane_read() has been called."
|
"sane_read() has been called."
|
||||||
|
@ -188,10 +196,6 @@ msgstr ""
|
||||||
"Zwinge das Backend dazu, nach einem Aufruf von sane_read() den Statuscode "
|
"Zwinge das Backend dazu, nach einem Aufruf von sane_read() den Statuscode "
|
||||||
"SANE_STATUS_ACCESS_DENIED zurückzuliefern."
|
"SANE_STATUS_ACCESS_DENIED zurückzuliefern."
|
||||||
|
|
||||||
#: .tmp/pnm.c:469 .tmp/pnm.c:475
|
|
||||||
msgid "PNM file reader"
|
|
||||||
msgstr "PNM Dateileser"
|
|
||||||
|
|
||||||
#: .tmp/saneopts.h:105
|
#: .tmp/saneopts.h:105
|
||||||
msgid "Number of options"
|
msgid "Number of options"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
@ -532,14 +536,17 @@ msgstr ""
|
||||||
|
|
||||||
#: .tmp/saneopts.h:228
|
#: .tmp/saneopts.h:228
|
||||||
msgid "Determines whether a builtin or a custom gamma-table should be used."
|
msgid "Determines whether a builtin or a custom gamma-table should be used."
|
||||||
msgstr "Legt fest, dass eine benutzerdefinierte Gammatabelle verwendet werden soll."
|
msgstr ""
|
||||||
|
"Legt fest, dass eine benutzerdefinierte Gammatabelle verwendet werden soll."
|
||||||
|
|
||||||
#: .tmp/saneopts.h:232
|
#: .tmp/saneopts.h:232
|
||||||
msgid ""
|
msgid ""
|
||||||
"Gamma-correction table. In color mode this option equally affects the red, "
|
"Gamma-correction table. In color mode this option equally affects the red, "
|
||||||
"green, and blue channels simultaneously (i.e., it is an intensity gamma "
|
"green, and blue channels simultaneously (i.e., it is an intensity gamma "
|
||||||
"table)."
|
"table)."
|
||||||
msgstr "Gammatabelle. Im Farbmodus wirkt sich diese Option auf alle Farbkomponenten gleichzeitig aus."
|
msgstr ""
|
||||||
|
"Gammatabelle. Im Farbmodus wirkt sich diese Option auf alle Farbkomponenten "
|
||||||
|
"gleichzeitig aus."
|
||||||
|
|
||||||
#: .tmp/saneopts.h:237
|
#: .tmp/saneopts.h:237
|
||||||
msgid "Gamma-correction table for the red band."
|
msgid "Gamma-correction table for the red band."
|
||||||
|
|
Ładowanie…
Reference in New Issue