PagesPerSheetDirection Enumeração

Definição

Especifica a organização das páginas quando mais de uma página de conteúdo é exibida em um único lado da mídia de impressão.

public enum class PagesPerSheetDirection
public enum PagesPerSheetDirection
type PagesPerSheetDirection = 
Public Enum PagesPerSheetDirection
Herança
PagesPerSheetDirection

Campos

BottomLeft 4

Páginas aparecem em colunas, de cima para baixo e da direita para a esquerda em relação à orientação da página.

BottomRight 2

Páginas aparecem em colunas, de cima para baixo e da esquerda para a direita em relação à orientação da página.

LeftBottom 3

Páginas são exibidas em linhas, da direita para a esquerda e de cima para baixo em relação à orientação da página.

LeftTop 7

Páginas são exibidas em linhas, da direita para a esquerda e de baixo para cima em relação à orientação da página.

RightBottom 1

Páginas são exibidas em linhas, da esquerda para a direita e de cima para baixo em relação à orientação da página.

RightTop 5

Páginas são exibidas em linhas, da esquerda para a direita e de baixo para cima em relação à orientação da página.

TopLeft 8

Páginas aparecem em colunas, de baixo para cima e da direita para a esquerda em relação à orientação da página.

TopRight 6

Páginas aparecem em colunas, de baixo para cima e da esquerda para a direita em relação à orientação da página.

Unknown 0

O recurso (cujas opções são representadas por essa enumeração) é definido como uma opção não definida no Esquema de Impressão.

Exemplos

O exemplo a seguir mostra como testar os recursos de uma impressora e configurar o trabalho de impressão para tirar proveito delas.

// ---------------------- GetPrintTicketFromPrinter -----------------------
/// <summary>
///   Returns a PrintTicket based on the current default printer.</summary>
/// <returns>
///   A PrintTicket for the current local default printer.</returns>
PrintTicket^ GetPrintTicketFromPrinter ()
{
   PrintQueue^ printQueue = nullptr;

   LocalPrintServer^ localPrintServer = gcnew LocalPrintServer();

   // Retrieving collection of local printer on user machine
   PrintQueueCollection^ localPrinterCollection = localPrintServer->GetPrintQueues();

   System::Collections::IEnumerator^ localPrinterEnumerator = localPrinterCollection->GetEnumerator();

   if (localPrinterEnumerator->MoveNext())
   {
      // Get PrintQueue from first available printer
      printQueue = ((PrintQueue^)localPrinterEnumerator->Current);
   } else
   {
      return nullptr;
   }
   // Get default PrintTicket from printer
   PrintTicket^ printTicket = printQueue->DefaultPrintTicket;

   PrintCapabilities^ printCapabilities = printQueue->GetPrintCapabilities();

   // Modify PrintTicket
   if (printCapabilities->CollationCapability->Contains(Collation::Collated))
   {
      printTicket->Collation = Collation::Collated;
   }
   if (printCapabilities->DuplexingCapability->Contains(Duplexing::TwoSidedLongEdge))
   {
      printTicket->Duplexing = Duplexing::TwoSidedLongEdge;
   }
   if (printCapabilities->StaplingCapability->Contains(Stapling::StapleDualLeft))
   {
      printTicket->Stapling = Stapling::StapleDualLeft;
   }
   return printTicket;
};// end:GetPrintTicketFromPrinter()
// ---------------------- GetPrintTicketFromPrinter -----------------------
/// <summary>
///   Returns a PrintTicket based on the current default printer.</summary>
/// <returns>
///   A PrintTicket for the current local default printer.</returns>
private PrintTicket GetPrintTicketFromPrinter()
{
    PrintQueue printQueue = null;

    LocalPrintServer localPrintServer = new LocalPrintServer();

    // Retrieving collection of local printer on user machine
    PrintQueueCollection localPrinterCollection =
        localPrintServer.GetPrintQueues();

    System.Collections.IEnumerator localPrinterEnumerator =
        localPrinterCollection.GetEnumerator();

    if (localPrinterEnumerator.MoveNext())
    {
        // Get PrintQueue from first available printer
        printQueue = (PrintQueue)localPrinterEnumerator.Current;
    }
    else
    {
        // No printer exist, return null PrintTicket
        return null;
    }

    // Get default PrintTicket from printer
    PrintTicket printTicket = printQueue.DefaultPrintTicket;

    PrintCapabilities printCapabilities = printQueue.GetPrintCapabilities();

    // Modify PrintTicket
    if (printCapabilities.CollationCapability.Contains(Collation.Collated))
    {
        printTicket.Collation = Collation.Collated;
    }

    if ( printCapabilities.DuplexingCapability.Contains(
            Duplexing.TwoSidedLongEdge) )
    {
        printTicket.Duplexing = Duplexing.TwoSidedLongEdge;
    }

    if (printCapabilities.StaplingCapability.Contains(Stapling.StapleDualLeft))
    {
        printTicket.Stapling = Stapling.StapleDualLeft;
    }

    return printTicket;
}// end:GetPrintTicketFromPrinter()
' ---------------------- GetPrintTicketFromPrinter -----------------------
''' <summary>
'''   Returns a PrintTicket based on the current default printer.</summary>
''' <returns>
'''   A PrintTicket for the current local default printer.</returns>
Private Function GetPrintTicketFromPrinter() As PrintTicket
    Dim printQueue As PrintQueue = Nothing

    Dim localPrintServer As New LocalPrintServer()

    ' Retrieving collection of local printer on user machine
    Dim localPrinterCollection As PrintQueueCollection = localPrintServer.GetPrintQueues()

    Dim localPrinterEnumerator As System.Collections.IEnumerator = localPrinterCollection.GetEnumerator()

    If localPrinterEnumerator.MoveNext() Then
        ' Get PrintQueue from first available printer
        printQueue = CType(localPrinterEnumerator.Current, PrintQueue)
    Else
        ' No printer exist, return null PrintTicket
        Return Nothing
    End If

    ' Get default PrintTicket from printer
    Dim printTicket As PrintTicket = printQueue.DefaultPrintTicket

    Dim printCapabilities As PrintCapabilities = printQueue.GetPrintCapabilities()

    ' Modify PrintTicket
    If printCapabilities.CollationCapability.Contains(Collation.Collated) Then
        printTicket.Collation = Collation.Collated
    End If

    If printCapabilities.DuplexingCapability.Contains(Duplexing.TwoSidedLongEdge) Then
        printTicket.Duplexing = Duplexing.TwoSidedLongEdge
    End If

    If printCapabilities.StaplingCapability.Contains(Stapling.StapleDualLeft) Then
        printTicket.Stapling = Stapling.StapleDualLeft
    End If

    Return printTicket
End Function ' end:GetPrintTicketFromPrinter()

Comentários

Use os valores desse tipo principalmente para estas finalidades:

O valor Desconhecido nunca é usado em propriedades de PrintCapabilities objetos.

Você nunca deve definir uma PrintTicket propriedade como Unknown. Se algum outro PrintTicket aplicativo produtor tiver criado um documento PrintTicket que define o recurso pages-per-sheet-direction como uma opção não reconhecida (ou seja, uma opção que não está definida no Esquema de Impressão), um PrintTicket objeto em seu aplicativo construído com esse documento terá Unknown como o valor da PagesPerSheetDirection propriedade.

Embora as PrintTicket classes e PrintCapabilities não possam ser herdadas, você pode estender o Esquema de Impressão para reconhecer recursos de dispositivo de impressão que não são contabilizados nas PrintTicket classes ou PrintCapabilities . Para obter mais informações, consulte Como estender o esquema de impressão e Create novas classes do sistema de impressão.

Aplica-se a

Confira também