Управление качеством изображения

Внимание

Рекомендуется использовать драйвер класса "Входящие" Microsoft IPP вместе с приложениями поддержки печати (PSA), чтобы настроить возможности печати в Windows 10 и 11 для разработки устройств принтера.

Дополнительные сведения см. в руководстве по проектированию приложений для поддержки печати.

Пользовательский интерфейс Unidrv предоставляет набор из трех переключателей, позволяющих пользователю выбрать "черновик", "лучше" или "лучший" качество изображения для задания печати. Качество черновика подчеркивает скорость принтера по разрешению изображений, в то время как лучшее качество делает противоположное.

Цель этих переключателей — разрешить пользователю легко выбирать параметры функции, необходимые для получения требуемого качества, без необходимости явного выбора необходимых параметров по отдельности.

Параметры, которые Должен выбрать Unidrv при нажатии переключателя, указываются в файле GPD принтера. Язык GPD определяет следующие три записи:

  • *DraftQualitySettings

  • *BetterQualitySettings

  • *BestQualitySettings

Каждая из этих записей связана с одной из переключателей, и каждая запись принимает список параметров. Когда пользователь выбирает соответствующую кнопку, Unidrv проходит по списку и задает указанные параметры.

Формат для каждого из записей параметров качества выглядит следующим образом:

*XXXXQualitySettings: LIST(FeatureName).OptionName, FeatureName.OptionName, FeatureName.OptionName, ...)

где каждое имя компонента — это имя, связанное с записью компонента *, и OptionName — это имя, связанное с одной из записей компонента *Option. Пустой список приводит к тому, что связанная переключатель неактивна.

Дополнительная требуемая запись указывает качество изображения по умолчанию. Используется следующий формат:

DefaultQuality: DefaultQuality

Где DefaultQuality является одним из DRAFTQUALITY, BETTERQUALITYили BESTQUALITY.

Эти записи файлов GPD могут быть связаны с любым вариантом ColorMode и MediaType функциями. Как правило, они помещаются в условные операторы, как показано в следующем примере.

*switch: ColorMode {
    *case: Mono {
        *BestQualitySettings: LIST(ColorMode.Mono,
                                   Resolution.Option1,
                                   TextQuality.Option3)
        *BetterQualitySettings: LIST(ColorMode.Mono,
                                     Resolution.Option1,
                                     TextQuality.Option1)
        *DraftQualitySettings: LIST(ColorMode.Mono,
                                    Resolution.Option2,
                                    TextQuality.Option2)
        *DefaultQuality: BETTERQUALITY }
    *default: {
        *BestQualitySettings: LIST(ColorMode.24bpp,
                                   Resolution.Option2,
                                   TextQuality.Option3)
        *BetterQualitySettings: LIST(ColorMode.Color,
                                     Resolution.Option2,
                                     TextQuality.Option1)
        *DraftQualitySettings: LIST(ColorMode.Color,
                                    Resolution.Option2,
                                    TextQuality.Option2)
        *DefaultQuality: BETTERQUALITY }}

Как показано в примере, хорошая стратегия заключается в том, чтобы указать одну запись *Регистр для одноцветного режима, а затем использовать запись *По умолчанию для всех многоцветных режимов. Это связано с тем, что страница страницы установки страницы Юнидрв предлагает пользователю два варианта: цвет или некрасивую печать. Если вы используете формат в примере, Unidrv отображает кнопки качества, когда пользователь выбирает параметр цветной печати.

Ниже приведен более сложный пример, который связывает качество изображения как с цветным режимом, так и с типом мультимедиа:

*switch: Colormode {
    *case: Mono {
    *switch: MediaType {
        *case: CLAYCOATED {
            *DraftQualitySettings:  LIST(Option List)
            *BetterQualitySettings:  LIST(Option List)
            *BestQualitySettings:  LIST(Option List)
            *DefaultQuality:  BESTQUALITY }
        *case: GLOSSY {
            *DraftQualitySettings:  LIST(Option List)
            *BetterQualitySettings:  LIST(Option List)
            *BestQualitySettings:  LIST(Option List)
            *DefaultQuality:  BETTERQUALITY 
        *default: 
            *DraftQualitySettings:  LIST(Option List)
            *BetterQualitySettings:  LIST(Option List)
            *BestQualitySettings:  LIST(Option List)
            *DefaultQuality:  DRAFTQUALITY }}}
    *default: {
    *switch: MediaType {
        *case: CLAYCOATED {
            *DraftQualitySettings:  LIST(Option List)
            *BetterQualitySettings:  LIST(Option List)
            *BestQualitySettings:  LIST(Option List)
            *DefaultQuality:  BESTQUALITY }
        *case: GLOSSY {
            *DraftQualitySettings:  LIST(Option List)
            *BetterQualitySettings:  LIST(Option List)
            *BestQualitySettings:  LIST(Option List)
            *DefaultQuality:  BETTERQUALITY }
        *default: {
            *DraftQualitySettings:  LIST(Option List)
            *BetterQualitySettings:  LIST(Option List)
            *BestQualitySettings:  LIST(Option List)
            *DefaultQuality:  DRAFTQUALITY }}}
}

При использовании записей GPD для параметра качества необходимо соблюдать следующие правила:

  • Всегда следует использовать все четыре записи. Указание пустого списка параметров разрешено и приводит к тому, что связанная переключатель будет серым.

  • Все четыре записи должны быть указаны для всех сочетаний ColorMode и MediaType. В примерах для этого используется запись *Default в каждом условном операторе.

  • Списки параметров в записях параметров качества не должны нарушать заданные ограничения параметров.

  • Параметры, включенные в список параметров, не должны изменять выбранный средний тип. Кроме того, хотя это приемлемо, например, чтобы задать цветовой режим 24 бит/пикселя для лучшего качества, 8 бит/пикселей для улучшения качества, и 4 бит/пикселя для качества черновика, изменение на 1 бит/пиксель (один цвет) не будет приемлемым.

Если функция включена в условную инструкцию, указывающую параметры качества, средство синтаксического анализа задает функцию *UpdateQualityMacro? атрибут true. Дополнительные сведения см. в разделе "Атрибуты компонентов".