diff options
-rw-r--r-- | CHANGES.md | 8 | ||||
-rw-r--r-- | cups/ppd-cache.c | 31 |
2 files changed, 36 insertions, 3 deletions
diff --git a/CHANGES.md b/CHANGES.md index 656a31dc0..8f8dac376 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -1,6 +1,12 @@ -CHANGES - 2.3b2 - 2018-01-17 +CHANGES - 2.3b3 - 2018-01-17 ============================ +Changes in CUPS v2.3b3 +---------------------- + +- The IPP Everywhere PPD generator did not support deep grayscale or 8-bit per + component AdobeRGB (Issue #5227) + Changes in CUPS v2.3b2 ---------------------- diff --git a/cups/ppd-cache.c b/cups/ppd-cache.c index c6708de27..27ed25363 100644 --- a/cups/ppd-cache.c +++ b/cups/ppd-cache.c @@ -3730,7 +3730,23 @@ _ppdCreateFromIPP(char *buffer, /* I - Filename buffer */ if (!default_color || !strcmp(default_color, "FastGray")) default_color = "Gray"; } - else if (!strcasecmp(keyword, "srgb_8") || !strcmp(keyword, "SRGB24") || !strcmp(keyword, "color")) + else if (!strcasecmp(keyword, "sgray_16") || !strcmp(keyword, "W8-16")) + { + if (!default_color) + cupsFilePrintf(fp, "*OpenUI *ColorModel/%s: PickOne\n" + "*OrderDependency: 10 AnySetup *ColorModel\n", _cupsLangString(lang, _("Color Mode"))); + + if (!strcmp(keyword, "W8-16")) + { + cupsFilePrintf(fp, "*ColorModel Gray/%s: \"<</cupsColorSpace 18/cupsBitsPerColor 8/cupsColorOrder 0/cupsCompression 0>>setpagedevice\"\n", _cupsLangString(lang, _("Grayscale"))); + + if (!default_color || !strcmp(default_color, "FastGray")) + default_color = "Gray"; + } + + cupsFilePrintf(fp, "*ColorModel Gray16/%s: \"<</cupsColorSpace 18/cupsBitsPerColor 16/cupsColorOrder 0/cupsCompression 0>>setpagedevice\"\n", _cupsLangString(lang, _("Deep Gray"))); + } + else if (!strcasecmp(keyword, "srgb_8") || !strncmp(keyword, "SRGB24", 7) || !strcmp(keyword, "color")) { if (!default_color) cupsFilePrintf(fp, "*OpenUI *ColorModel/%s: PickOne\n" @@ -3740,7 +3756,7 @@ _ppdCreateFromIPP(char *buffer, /* I - Filename buffer */ default_color = "RGB"; } - else if (!strcasecmp(keyword, "adobe-rgb_16") || !strcmp(keyword, "ADOBERGB48")) + else if (!strcasecmp(keyword, "adobe-rgb_16") || !strcmp(keyword, "ADOBERGB48") || !strcmp(keyword, "ADOBERGB24-48")) { if (!default_color) cupsFilePrintf(fp, "*OpenUI *ColorModel/%s: PickOne\n" @@ -3751,6 +3767,17 @@ _ppdCreateFromIPP(char *buffer, /* I - Filename buffer */ if (!default_color) default_color = "AdobeRGB"; } + else if ((!strcasecmp(keyword, "adobe-rgb_8") && !ippContainsString(attr, "adobe-rgb_16")) || !strcmp(keyword, "ADOBERGB24")) + { + if (!default_color) + cupsFilePrintf(fp, "*OpenUI *ColorModel/%s: PickOne\n" + "*OrderDependency: 10 AnySetup *ColorModel\n", _cupsLangString(lang, _("Color Mode"))); + + cupsFilePrintf(fp, "*ColorModel AdobeRGB/%s: \"<</cupsColorSpace 20/cupsBitsPerColor 8/cupsColorOrder 0/cupsCompression 0>>setpagedevice\"\n", _cupsLangString(lang, _("Deep Color"))); + + if (!default_color) + default_color = "AdobeRGB"; + } } if (default_color) |