Compartilhar via


Meio-tom personalizado

Importante

A plataforma de impressão moderna é o meio preferido do Windows para se comunicar com as impressoras. Recomendamos que você use o driver de classe de caixa de entrada IPP da Microsoft juntamente com PSA (Aplicativos de Suporte à Impressão) 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 Plataformade impressão moderna e o Guia de design do aplicativo de suporte de impressão.

O Unidrv permite que você execute operações de meio-tom usando GDI, o dispositivo da impressora ou por código de driver personalizado. Esta seção explica como executar operações de meio-tom no código de driver personalizado.

Dois tipos de personalização estão disponíveis:

  • Padrões de meio-tom personalizados

  • Métodos de meio-tom personalizados

>Padrões de meio-tom personalizados

Você pode especificar padrões de meio-tom em uma DLL de recurso ou gerá-los por um plug-in de renderização que implementa o método IPrintOemUni::HalftonePattern. A página de referência para esse método fornece um exemplo de como gerar um padrão de meio-tom.

IPrintOemUni::HalftonePattern deve ser implementado se uma das seguintes opções for verdadeira:

  • Os padrões personalizados são fornecidos em uma DLL de recurso e os padrões são criptografados.

  • Padrões personalizados não são fornecidos em uma DLL de recurso. Em vez disso, eles são gerados por IPrintOemUni::HalftonePattern.

A finalidade do método IPrintOemUni::HalftonePattern é retornar um padrão de meio-tom utilizável para Unidrv, que, por sua vez, o passa para GDI. O método pode decodificar um padrão armazenado em uma DLL de recurso em um formulário criptografado ou pode gerar um padrão durante a execução.

Se você implementar o método IPrintOemUni::HalftonePattern, o arquivo GPD deverá incluir um atributo *HTCallbackID em cada entrada *Option de meio-tom que especifica um método de meio-tom para o qual um padrão personalizado é usado.

Para obter mais informações sobre esse atributo, consulte Atributos de opção para o recurso de meio-tom.

Métodos de meio-tom personalizados

Para uma impressora que usa Unidrv, as etapas para fornecer código que implementa métodos de meio-tom personalizados são as seguintes:

  1. Forneça um plug-in de renderização que implemente o método IPrintOemUni ImageProcessing.

  2. Inclua uma entrada *Feature de meio-tom no arquivo GPD da impressora, com cada entrada *Option contida que representa um método de meio-tom. (Métodos de meio-tom padrão e personalizados podem ser incluídos.)

O método IPrintOemUni ImageProcessing recebe bitmaps GDI como entrada. O método deve executar operações de meio-tom, com base no método de meio-tom selecionado no momento, e retornar o bitmap resultante para Unidrv.

Se um plug-in de renderização implementar IPrintOemUni ImageProcessing, ele também poderá implementar o IPrintOemUni::MemoryUsage.

Para obter mais informações sobre meios-tons, consulte Meios-tons com Unidrv.