Meio-tom fornecido pelo minidriver
Importante
A plataforma de impressão moderna é o meio preferencial 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.
Se um formato de cor especificado for aquele para o qual o número de bits por pixel usado para renderizar a imagem (*DrvBPP) é maior do que os bits por pixel suportados pela impressora (*DevBPP multiplicado por *DevNumOfPlanes), você deverá fornecer recursos de meio-tom personalizados.
Para fornecer recursos de meio-tom personalizados, você deve fazer o seguinte:
Forneça um plug-in de renderização que implemente o método IPrintOemUni ImageProcessing.
Inclua uma entrada Halftone*Feature em seu arquivo GPD e, para cada método de meio-tom personalizado, inclua uma entrada *Option descrevendo o método de meio-tom. (Não use nenhum dos atributos de opção para o recurso de meio-tom.)
Inclua uma entrada ColorMode *Feature em seu arquivo GPD. Para cada opção de formatação de cor especificada, você deve incluir um atributo *IPCallbackID se quiser que o método IPrintOemUni ImageProcessing manipule meios-tons para esse formato de cor.
O exemplo a seguir define dois formatos de cores e quatro métodos de meio-tom. O exemplo usa restrições de opção para especificar quais métodos de meio-tom o Unidrv deve permitir que um usuário selecione para cada formato de cor.
*Feature: ColorMode
{
*Option: ColorFormat1
{
*Name: "Color Format 1"
*DevBPP: 1
*DevNumofPlanes: 4
*ColorPlaneOrder: LIST (CYAN, MAGENTA, YELLOW, BLACK)
*DrvBPP: 4
*Constraints: LIST (Halftone.CustomHalftoneMethod1,
+ Halftone.CustomHalftoneMethod2)
}
*Option: ColorFormat2
{
*Name: "Color Format 2"
*DevBPP: 24
*DevNumofPlanes: 1
*DrvBPP: 8
*IPCallbackID: 100
*Constraints: LIST (Halftone.StandardHalftoneMethod1,
+ Halftone.StandardHalftoneMethod2)
}
}
*Feature: Halftone
{
*Option: StandardHalftoneMethod1
{
*Name: "Standard Halftone Method 1"
}
*Option: StandardHalftoneMethod2
{
*Name: "Standard Halftone Method 2"
}
*Option: CustomHalftoneMethod1
{
*Name: "Custom Halftone Method 1"
}
*Option: CustomHalftoneMethod2
{
*Name: "Custom Halftone Method 2"
}
}
No exemplo, as opções ColorFormat1 e ColorFormat2 ColorMode representam formatos de cor que o Unidrv pode manipular, conforme explicado em Manipulando formatos de cor. Para ColorFormat2, um atributo *IPCallbackID é especificado. Se o usuário da impressora selecionar ColorFormat2 como o formato de cor, o Unidrv chamará o método COM IPrintOemUni ImageProcessing da impressora para lidar com meios-tons. Um dos parâmetros do método é um ponteiro para o nome da cadeia de caracteres que representa o método de meio-tom selecionado no momento.
Para obter mais informações sobre meios-tons, consulte Meios-tons personalizados.