Compartilhar via


Suporte à API Win32 para recursos de impressão

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 subsistema de impressão do Windows Vista fornece suporte de compatibilidade que permite que aplicativos do Windows Presentation Foundation (WPF) usem drivers de impressão baseados em GDI e permite que aplicativos baseados no Microsoft Win32 usem drivers de impressão XPSDrv. Essa compatibilidade é fornecida por meio de uma camada de correções de software. Shims são módulos de software que executam operações de transformação nos dados para que softwares incompatíveis possam interoperar. A figura a seguir mostra os caminhos de dados dessa implementação para Recursos de Impressão.

Diagrama que ilustra os fluxos de dados dos recursos de impressão.

Os drivers de impressão XPSDrv e os drivers de impressão versão 3 baseados em GDI dão suporte à DrvDeviceCapabilities. Quando um aplicativo Win32 chama DrvDeviceCapabilities ou a função GetDevCap, o subsistema de impressão chamará DrvDeviceCapabilities para coletar informações sobre a capacidade do dispositivo do driver de impressão.

Quando um aplicativo WPF solicita um documento PrintCapabilities de um driver de impressão, o subsistema de impressão executará um dos seguintes procedimentos:

  • Se o driver de impressão der suporte à interface IPrintTicketProvider, o subsistema de impressão consultará o driver de impressão para o documento PrintCapabilities usando o método IPrintTicketProvider::GetPrintCapabilities.

  • Se o driver de impressão não der suporte à interface IPrintTicketProvider, o Gerenciador de Tíquetes de Impressão consultará a função DrvDeviceCapabilities do driver de impressão e usará as informações retornadas para criar um documento PrintTicket que é retornado ao aplicativo.

Para obter mais informações sobre como a interface IPrintTicketProvider é suportada pelos drivers pelos drivers de impressão da Microsoft, consulte Design de interface de plug-in e driver de impressora no Windows Vista.