Partilhar via


Especificando a orientação do papel

Importante

A moderna plataforma de impressão é o meio preferido do Windows para comunicar com as impressoras. Recomendamos que utilize o controlador de classe da caixa de entrada IPP da Microsoft, juntamente com as Aplicações de Suporte de Impressão (PSA), 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 Guia de design do aplicativo de suporte de impressão v1 e v2.

Há três opções padrão associadas à funcionalidade padrão de Orientação: RETRATO, LANDSCAPE_CC90 e LANDSCAPE_CC270. A menos que especificado de outra forma, a orientação padrão é PORTRAIT. O uso dessa opção é simples e não é discutido mais adiante neste tópico. O equilíbrio deste tópico está relacionado com as duas opções de paisagem.

LANDSCAPE_CC90 e LANDSCAPE_CC270

As opções LANDSCAPE_CC90 e LANDSCAPE_CC270 do recurso Orientação indicam a quantidade de rotação a ser aplicada ao texto e aos gráficos no modo retrato, para convertê-los no modo paisagem. A opção LANDSCAPE_CC90 gira o texto e os gráficos 90 graus no sentido anti-horário. A opção LANDSCAPE_CC270 gira o texto e os gráficos 270 graus no sentido anti-horário, o que equivale a uma rotação de 90 graus no sentido horário. Para ambas as opções, o Unidrv lida com as tarefas de girar o texto e os gráficos na quantidade indicada e movê-los conforme apropriado para a nova orientação.

Muitas impressoras suportam o modo retrato e o modo paisagem, enquanto as restantes impressoras, normalmente aquelas com menos funcionalidades, suportam apenas o modo retrato. Cada modo tem seu próprio sistema de coordenadas: no modo retrato, a origem está no canto superior esquerdo (x aumenta para a direita e y aumenta para baixo); No modo paisagem, a origem está no canto inferior esquerdo (X aumenta para cima e Y aumenta para a direita).

As impressoras que não suportam o modo paisagem ainda podem ser feitas para imprimir documentos nesta orientação. Para esse tipo de impressora, você deve especificar a opção LANDSCAPE_CC270 no arquivo GPD da impressora. (Se você especificar a opção LANDSCAPE_CC90 para essas impressoras, o texto e os gráficos aparecerão ilegíveis quando impressos.) Nesta opção, o Unidrv apresenta o texto e os gráficos transformados à impressora com as coordenadas relativas à origem do canto superior esquerdo da impressora.

Para uma impressora que suporte o modo paisagem e o modo retrato, você deve especificar a opção LANDSCAPE_CC90 no arquivo GPD. Sob esta opção, o Unidrv deve ser direcionado para emitir uma cadeia de comando paisagem para a impressora, fazendo com que ela mude do sistema de coordenadas do modo retrato para o sistema de coordenadas do modo paisagem (com a origem no canto inferior esquerdo). Em seguida, o Unidrv apresenta o texto e os gráficos transformados à impressora com as coordenadas relativas à origem do canto inferior esquerdo da impressora.

No entanto, uma impressora que suporta o modo paisagem (para o qual a opção LANDSCAPE_CC90 normalmente seria usada), ainda pode operar com a opção LANDSCAPE_CC270. Nesta opção, o Unidrv é direcionado para tratar a impressora como se suportasse apenas o modo retrato (ou seja, com apenas um único sistema de coordenadas, com a origem no canto superior esquerdo). Consequentemente, a Unidrv não deve ser orientada a emitir um comando para alterar os sistemas de coordenadas. Unidrv apresenta o texto transformado e gráficos para a impressora com coordenadas relativas a esta origem situada no canto superior esquerdo. Como o Unidrv assume esse local de origem, essa impressora não deve receber uma cadeia de comando do modo paisagem, mesmo quando o usuário selecionou a orientação Paisagem na página de propriedades da impressora. No exemplo de arquivo GPD a seguir, observe que a seção *Option: LANDSCAPE_CC270 contém um comando para colocar a impressora no modo retrato (ORIENT_PORTRAIT_CMD) e não um para colocá-la no modo paisagem.

*Feature: Orientation
{
  *rcNameID: =ORIENTATION_DISPLAY
  *DefaultOption: PORTRAIT
  *Option: PORTRAIT
  {
    *rcNameID: =PORTRAIT_DISPLAY
    *Command: CmdSelect
    {
      *Order: DOC_SETUP.60
      *Cmd: =ORIENT_PORTRAIT_CMD
    }
  }
  *Option: LANDSCAPE_CC270
   {
     *rcNameID: =LANDSCAPE_DISPLAY
     *Command: CmdSelect
     {
       *Order: DOC_SETUP.60
       *Cmd: =ORIENT_PORTRAIT_CMD
     }
  }
}

Para o Windows 7, a função MxdcGetPDEVAdjustment tem novos parâmetros para rotação em paisagem. Para obter mais informações, consulte MxdcXDCGetPDEVAdjustment.