Compartilhar via


Recursos PPD

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.

Os recursos PPD são definidos no arquivo PPD em pares de palavras-chave de estrutura *OpenUI/*CloseUI e em determinadas palavras-chave PPD que são tratadas de forma semelhante pelo driver Pscript. Embora EnumFeatures liste as palavras-chave *LeadingEdge e *UseHWMargins, elas não são definidas nos pares de palavras-chave de estrutura PPD *OpenUI/*CloseUI.

Os métodos GetOptions e SetOptions ignoram essas palavras-chave se elas aparecerem na lista de recursos. As palavras-chave de recurso/opção PPD diferenciam maiúsculas de minúsculas.

SetOptions lida com certos recursos PPD de uma maneira especial:

  • Se o arquivo PPD da impressora incluir a palavra-chave do recurso *OutputOrder e SetOptions for chamado para alterar a seleção de opções para esse recurso, a configuração do recurso do driver %PageOrder será alterada para corresponder à nova ordem de saída. Isso é feito para evitar que o spooler realize uma simulação desnecessária da ordem das páginas.

  • Se o arquivo PPD da impressora incluir a palavra-chave do recurso *OutputBin e SetOptions for chamado para alterar a seleção de opções para esse recurso, e a alteração fizer com que a configuração atual do recurso de driver %PageOrder seja o oposto da ordem de página da impressora e %MetafileSpooling for "False", %MetafileSpooling será redefinido como "True".

  • Quando o spooling EMF do spooler está habilitado e Collate está definido como "True" (isso pode ser definido diretamente na parte pública da estrutura DEVMODEW ou chamando SetOptions na palavra-chave do recurso *Collate do PPD), mas o recurso Collate não está disponível no momento e %MetafileSpooling é "False", então %MetafileSpooling será redefinido como "True". Isso é feito quando todas as configurações solicitadas na chamada SetOptions são aplicadas.

  • Se Duplex estiver definido como simplex (isso pode ser definido diretamente na parte pública da estrutura DEVMODE ou chamando SetOptions na palavra chave do recurso *Duplex do PPD), mas %PagePerSheet estiver definido como "Booklet", então %PagePerSheet será alterado para "2". Isso é feito quando todas as configurações solicitadas na chamada SetOptions são aplicadas.