Compartilhar via


Funções definidas por DLLs gráficas da impressora

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.

Como todos os drivers gráficos, as DLLs gráficas de impressora são responsáveis por definir as funções DDI gráficas a seguir. Após DrvEnableDriver, o ponto de entrada inicial do driver, as funções restantes são listadas em ordem alfabética. Observe que, como a GDI chama DrvEnableDriver pelo nome, seu nome aparece em negrito. A GDI chama todas as outras funções de driver de exibição por meio de uma matriz de ponteiros de função que DrvEnableDriver retorna.

Nome da função Descrição
DrvEnableDriver Permite que o driver se inicialize e retorne ponteiros para funções DDI gráficas compatíveis.
DrvCompletePDEV Fornece ao driver um identificador GDI para uma instância de dispositivo.
DrvDisableDriver (Opcional) Permite que o driver execute operações de limpeza antes de ser descarregado.
DrvDisablePDEV Permite que o driver remova informações específicas da instância do dispositivo.
DrvDisableSurface Permite que o driver remova uma superfície de desenho.
DrvEnablePDEV Permite que o driver forneça à GDI características físicas do dispositivo e inicialize informações específicas da instância do dispositivo.
DrvEnableSurface Permite que o driver crie uma superfície de desenho.
DrvQueryDeviceSupport (Opcional) Retorna informações específicas do dispositivo solicitadas.
DrvQueryDriverInfo (Opcional) Retorna informações específicas do driver solicitadas.

As DLLs gráficas de impressora também são responsáveis por definir as seguintes funções DDI gráficas específicas para impressão, que são chamadas em certos momentos durante a renderização de um trabalho de impressão.

Função Quando chamado
DrvEndDoc Quando a GDI terminar de enviar um documento ao driver para renderização.
DrvNextBand (Opcional) Quando a GDI termina de desenhar uma banda para uma página física, para que o driver possa enviar a banda para a impressora.
DrvQueryPerBandInfo (Opcional) Antes que a GDI comece a desenhar uma banda para uma página física, para que o driver possa fornecer à GDI informações específicas da banda.
DrvSendPage Quando a GDI terminar de desenhar uma página física, o driver poderá enviar a página para a impressora.
DrvStartBanding (Opcional) Quando a GDI estiver pronta para começar a enviar bandas de uma página física para o driver para renderização.
DrvStartDoc Quando a GDI estiver pronta para começar a enviar um documento ao driver para renderização.
DrvStartPage Quando a GDI estiver pronta para começar a enviar uma página de documento ao driver para renderização.

Normalmente, uma DLL gráfica de impressora também define quaisquer funções DDI gráficas adicionais necessárias para realizar a renderização do trabalho de impressão. O número e o tipo de funções definidas dependem de:

  • Se o driver é compatível com o uso de superfícies de desenho gerenciadas por GDI ou gerenciadas por dispositivo (ou ambas). Para mais informações, confira Tipos de superfície.

  • A medida em que as operações de desenho podem ser tratadas pela GDI em vez de serem realizadas pelo próprio driver. Para mais informações, consulte Usar a DDI gráfica.

Todas as funções definidas por DLLs gráficas de impressora são chamadas pelo GRE (mecanismo de renderização de gráficos) no modo kernel da GDI.

As funções DrvEnableDriver e DrvQueryDriverInfo são exportadas pela DLL gráfica. Os endereços de todas as outras funções DDI gráficas com suporte são colocados em uma tabela retornada pela função DrvEnableDriver.