PageOrder 열거형
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
인쇄 장치에서 여러 페이지 문서를 앞면에서 뒤로 인쇄할지, 아니면 앞면에서 앞으로 인쇄할지를 지정합니다.
public enum class PageOrder
public enum PageOrder
type PageOrder =
Public Enum PageOrder
- 상속
필드
| Name | 값 | Description |
|---|---|---|
| Unknown | 0 | 이 열거형으로 표시되는 옵션인 기능은 인쇄 스키마에 정의되지 않은 옵션으로 설정됩니다. |
| Standard | 1 | 출력은 프런트 투 백 순서로 인쇄됩니다. |
| Reverse | 2 | 출력은 앞뒤로 인쇄됩니다. |
예제
다음 예제에서는 프린터의 기능을 테스트 하 고 해당 기능을 활용 하도록 인쇄 작업을 구성 하는 방법을 보여 있습니다.
// ---------------------- 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()
설명
주로 이러한 용도로 이 형식의 값을 사용합니다.
컬렉션의 PageOrderCapability 멤버인 속성인 PrintCapabilities이러한 값은 프린터에서 지원하는 페이지 순서의 유형을 나타냅니다. (대부분의 프린터는 두 가지 유형을 모두 지원합니다.)
값은 속성 PrintTicket값 PageOrder 으로 지정된 순서로 출력을 인쇄하도록 프린터에 지시합니다.
알 수 없는 값은 개체의 PrintCapabilities 속성에 사용되지 않습니다.
속성을 알 수 없음으로 PrintTicket 설정해서는 안 됩니다. 일부 다른 PrintTicket 생성 응용 프로그램에서 페이지 순서 기능을 인식할 수 없는 옵션(즉, 인쇄 스키마에 정의되지 않은 옵션)PrintTicket으로 설정하는 PrintTicket 문서를 만든 경우 해당 문서로 생성된 응용 프로그램의 개체에 알 수 없음이 속성 값 PageOrder 으로 지정됩니다.
PrintTicket 클래스와 PrintCapabilities 클래스를 상속할 수는 없지만 인쇄 스키마를 확장하여 또는 PrintCapabilities 클래스에서 PrintTicket 고려되지 않는 인쇄 장치 기능을 인식할 수 있습니다. 자세한 내용은 방법: 인쇄 스키마 확장 및 새 인쇄 시스템 클래스 만들기를 참조하세요.