Partilhar via


Controlando a qualidade da imagem

Importante

A moderna plataforma de impressão é o meio preferido do Windows para comunicar com as impressoras. Recomendamos que utilize o controlador de classe da caixa de entrada IPP da Microsoft, juntamente com as Aplicações de Suporte de Impressão (PSA), para personalizar a experiência de impressão no Windows 10 e 11 para o desenvolvimento de dispositivos de impressora.

Para obter mais informações, consulte o guia de design do aplicativo de suporte Print.

A interface de utilizador do Unidrv fornece um conjunto de três botões de opção que permitem ao utilizador selecionar "rascunho", "melhor" ou "excelente" qualidade de imagem para um trabalho de impressão. A qualidade de rascunho enfatiza a velocidade da impressora sobre a resolução da imagem, enquanto a melhor qualidade faz o oposto.

O objetivo destes botões rádio é permitir que o usuário selecione facilmente as funcionalidades necessárias para obter a qualidade desejada, sem a necessidade de selecioná-las individualmente.

As opções que o Unidrv deve selecionar quando um botão de rádio é pressionado são especificadas no arquivo GPD da impressora. A linguagem GPD define as seguintes três entradas:

  • *Configurações de Qualidade de Rascunho

  • *BetterQualitySettings

  • *ConfiguraçõesDeMelhorQualidade

Cada uma dessas entradas está associada a um dos botões de rádio, e cada entrada permite uma lista de opções. Quando um usuário seleciona o botão correspondente, o Unidrv percorre a lista e define as opções especificadas.

O formato para cada uma das entradas de configuração de qualidade é o seguinte:

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

onde cada FeatureName é um nome associado a uma entrada *Feature, e OptionName é um nome associado a uma das entradas *Option da funcionalidade. Uma lista vazia faz com que o botão de opção associado fique acinzentado.

Uma entrada adicional obrigatória especifica a qualidade da imagem padrão. O formato é o seguinte:

DefaultQuality:DefaultQuality

onde DefaultQuality é um dos DRAFTQUALITY, BETTERQUALITYou BESTQUALITY.

Essas entradas de arquivo GPD podem ser associadas a qualquer opção dos recursos ColorMode e MediaType. Normalmente, eles são colocados em instruções condicionais, conforme ilustrado no exemplo a seguir.

*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 }}

Como ilustrado no exemplo, uma boa estratégia é especificar uma entrada *Caso para o modo de cor única e, em seguida, usar uma entrada *Padrão para todos os modos multicoloridos. Isso ocorre porque a página de da folha de propriedades Page Setup da Unidrv oferece ao usuário duas opções: impressão colorida ou não colorida. Se você usar o formato no exemplo, o Unidrv exibirá os botões de qualidade quando o usuário selecionar a opção de impressão colorida.

A seguir está um exemplo mais complexo, que vincula a qualidade da imagem ao modo de cor e ao tipo de mídia:

*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 }}}
}

Ao usar as entradas de configuração de qualidade GPD, as seguintes regras devem ser observadas:

  • Você deve sempre usar todas as quatro entradas. A especificação de uma lista de opções vazia é permitida e faz com que o botão de opção associado fique acinzentado.

  • Todas as quatro entradas devem ser especificadas para todas as combinações ColorMode e MediaType. Os exemplos usam uma entrada *Default dentro de cada instrução condicional para conseguir isso.

  • As listas de opções dentro das entradas de configuração de qualidade não devem violar nenhuma restrição de opção você especificou.

  • As opções incluídas em uma lista de opções não devem alterar o tipo de meio selecionado. Além disso, embora seja aceitável, por exemplo, definir o modo de cor para 24 bits/pixel para melhor qualidade, 8 bits/pixel para melhor qualidade e 4 bits/pixel para qualidade de rascunho, mudar para 1 bits/pixel (cor única) não seria aceitável.

Se um recurso for incluído numa instrução condicional que especifique as definições de qualidade, o analisador define o atributo *UpdateQualityMacro? como TRUE. Para obter mais informações, consulte Atributos de recurso.