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 o guia de design do Aplicativo de Suporte de Impressão v1 e v2.

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.

diagram illustrating print capabilities data flows.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.