PrintTicket PrintTicket PrintTicket PrintTicket Class

정의

인쇄 작업의 설정을 정의합니다.Defines the settings of a print job.

public ref class PrintTicket sealed : System::ComponentModel::INotifyPropertyChanged
public sealed class PrintTicket : System.ComponentModel.INotifyPropertyChanged
type PrintTicket = class
    interface INotifyPropertyChanged
Public NotInheritable Class PrintTicket
Implements INotifyPropertyChanged
상속
PrintTicketPrintTicketPrintTicketPrintTicket
구현

예제

다음 예제에서는 특정 프린터의 기능을 확인 하는 방법 및 활용 하는 인쇄 작업을 구성 하는 방법을 보여 줍니다.The following example shows how to determine the capabilities of a specific printer and how to configure a print job to take advantage of them.

// ---------------------- 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^ printCapabilites = printQueue->GetPrintCapabilities();

   // Modify PrintTicket
   if (printCapabilites->CollationCapability->Contains(Collation::Collated))
   {
      printTicket->Collation = Collation::Collated;
   }
   if (printCapabilites->DuplexingCapability->Contains(Duplexing::TwoSidedLongEdge))
   {
      printTicket->Duplexing = Duplexing::TwoSidedLongEdge;
   }
   if (printCapabilites->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 printCapabilites = printQueue.GetPrintCapabilities();

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

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

    if (printCapabilites.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 printCapabilites As PrintCapabilities = printQueue.GetPrintCapabilities()

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

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

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

    Return printTicket
End Function ' end:GetPrintTicketFromPrinter()

설명

A PrintTicket 개체는 호출 하는 XML 문서의 특정 형식의 쉬운-에-작업-사용 하 여 표현 된 PrintTicket 문서가합니다.A PrintTicket object is an easy-to-work-with representation of a certain type of XML document called a PrintTicket document. 후자는 프린터 (이루어지는 데이터 정렬 및 스테이플링) 하는 등의 다양 한 기능을 설정 하는 방법을 지시 하는 명령 집합입니다.The latter is a set of instructions telling a printer how to set its various features (such as duplexing, collating, and stapling). 예를 들어, 해당 스테이플 설정 하 고 왼쪽된 위 모퉁이에서 인쇄 작업을 스테이플링 프린터를 지정 하는 문서는 것이 <JobStapleAllDocuments … > 지정 하는 요소 StapleTopLeft합니다.For example, to instruct the printer to turn on its stapler and staple print jobs in the upper left corner, the document would have a <JobStapleAllDocuments … > element that specifies StapleTopLeft. 요소를 나타내는 차례로 합니다 Stapling 의 속성을 PrintTicket 개체입니다.The element is, in turn, represented by the Stapling property of the PrintTicket object. PrintTicket 문서가 준수 해야 합니다 Print Schema합니다.The PrintTicket document must conform to the Print Schema.

합니다 PrintTicket 클래스를 사용 하면 XML 직접 작성할에서 신경 쓸 필요 없이 프린터의 기능을 구성 하는 애플리케이션 Stream 개체입니다.The PrintTicket class enables your application to configure the printer's features without having to engage in any direct writing of XML Stream objects.

속성으로 표현 되며 집 이나 회사에서 사용 하는 파일 및 사진 프린터의 가장 인기 있는 기능을 모두 PrintTicket 클래스입니다.All of the most popular features of home and business file and photo printers are represented by properties of PrintTicket the class. 하지만 Print Schema 더 많은 정의 일반적이 지 기능 하며 확장할 수 있습니다는 특수 인쇄 디바이스의 기능을 처리 합니다.But the Print Schema defines many more, less common, features and it can be extended to handle features of specialty printing devices. 따라서 있지만 합니다 PrintTicketPrintCapabilities 클래스를 상속할 수 없습니다, 확장할 수 있습니다는 인쇄 스키마 에서 처리 하지 않은 인쇄 디바이스 기능을 인식 하는 PrintTicket 또는 PrintCapabilities 클래스입니다.So, although the PrintTicket and PrintCapabilities classes cannot be inherited, you can extend the Print Schema to recognize print device features that are not accounted for in the PrintTicket or PrintCapabilities classes. 자세한 내용은 방법: 인쇄 스키마를 확장 하 고 새 인쇄 시스템 클래스를 만듭니다.For more information see How to: Extend the Print Schema and Create New Print System Classes.

참고 때 합니다 PrintTicket PrintTicket 문서가 사용 하는 생성자를 사용 하 여 개체를 만들 (으로 Stream) 매개 변수는 전체 문서 내의 XML 요소를 포함 하 여 개체의 public이 아닌 필드에 저장 됩니다 하는 공용 속성으로 표현 되지 않는 일반적인 기능 덜 express는 PrintTicket 클래스입니다.Note When the PrintTicket object is created with the constructor that takes a PrintTicket document (as a Stream) parameter, that entire document is stored in a non-public field in the object, including the XML elements within it that express less common features that are not represented by any of the public properties of the PrintTicket class. 사실 PrintTicket 문서가 생성 되는 드라이버의 프라이빗 확장을 사용 하는 경우는 Print Schema개인적으로 정의된 태그는 public이 아닌 PrintTicket 문서의 일부로 저장됩니다.In fact, if the driver that produced the PrintTicket document is using a private extension of the Print Schema, that privately defined markup is also stored as part of the non-public PrintTicket document.

주의

내에서 클래스를 System.Printing 네임 스페이스는 Windows 서비스 또는 ASP.NET 애플리케이션 또는 서비스 내에서 사용 하 여 지원 되지 않습니다.Classes within the System.Printing namespace are not supported for use within a Windows service or ASP.NET application or service. 이러한 애플리케이션 형식 중 하나에서 이러한 클래스를 사용 하는 동안 예기치 않은 문제가 발생할 수 있습니다, 그리고 감소와 같은 서비스 성능 및 런타임 예외입니다.Attempting to use these classes from within one of these application types may produce unexpected problems, such as diminished service performance and run-time exceptions.

Windows Forms 애플리케이션에서 인쇄 하려는 경우 참조는 System.Drawing.Printing 네임 스페이스입니다.If you want to print from a Windows Forms application, see the System.Drawing.Printing namespace.

생성자

PrintTicket() PrintTicket() PrintTicket() PrintTicket()

PrintTicket 클래스의 새 인스턴스를 초기화합니다.Initializes a new instance of the PrintTicket class.

PrintTicket(Stream) PrintTicket(Stream) PrintTicket(Stream) PrintTicket(Stream)

XML 인쇄 스키마를 준수하는 XML 스트림(PrintTicket 문서가 포함된 스트림)을 사용하여 PrintTicket 클래스의 새 인스턴스를 초기화합니다.Initializes a new instance of the PrintTicket class by using an XML stream (that contains a PrintTicket document) that complies with the XML Print Schema.

속성

Collation Collation Collation Collation

문서를 한 부씩 인쇄할지 여부를 나타내는 값을 가져오거나 설정합니다.Gets or sets a value indicating whether the printer collates its output.

CopyCount CopyCount CopyCount CopyCount

인쇄 매수를 가져오거나 설정합니다.Gets or sets the number of copies for the print job.

DeviceFontSubstitution DeviceFontSubstitution DeviceFontSubstitution DeviceFontSubstitution

인쇄 작업 시 컴퓨터 기반 글꼴 대신 디바이스 기반 글꼴을 사용할지 여부를 나타내는 값을 가져오거나 설정합니다.Gets or sets a value indicating whether the printer substitutes device-based fonts for computer-based fonts on the print job.

Duplexing Duplexing Duplexing Duplexing

인쇄 작업에 사용할 양면 인쇄(있는 경우)의 종류를 나타내는 값을 가져오거나 설정합니다.Gets or sets a value indicating what kind of two-sided printing, if any, the printer uses for the print job.

InputBin InputBin InputBin InputBin

사용할 입력함(용지함)을 나타내는 값을 가져오거나 설정합니다.Gets or sets a value indicating what input bin (paper tray) to use.

OutputColor OutputColor OutputColor OutputColor

컬러 또는 회색조의 콘텐츠를 처리하는 방법을 나타내는 값을 가져오거나 설정합니다.Gets or sets a value indicating how the printer handles content that has color or shades of gray.

OutputQuality OutputQuality OutputQuality OutputQuality

인쇄 작업의 출력 품질을 나타내는 값을 가져오거나 설정합니다.Gets or sets a value indicating the quality of output for the print job.

PageBorderless PageBorderless PageBorderless PageBorderless

디바이스에서 콘텐츠를 미디어의 가장자리까지 인쇄하는지 또는 가장자리 주위에 인쇄되지 않은 여백을 남겨두는지를 나타내는 값을 가져오거나 설정합니다.Gets or sets a value indicating whether the device prints content to the edge of the media or leaves an unprinted margin around the edge.

PageMediaSize PageMediaSize PageMediaSize PageMediaSize

인쇄 작업에 사용하는 용지(또는 다른 미디어)의 크기를 가져오거나 설정합니다.Gets or sets the page size for the paper (or other media) that a printer uses for a print job.

PageMediaType PageMediaType PageMediaType PageMediaType

인쇄 작업에 사용할 용지 또는 미디어의 종류를 나타내는 값을 가져오거나 설정합니다.Gets or sets a value indicating what sort of paper or media the printer uses for the print job.

PageOrder PageOrder PageOrder PageOrder

여러 페이지를 인쇄하는 경우 뒤 페이지부터 인쇄할지 또는 앞 페이지부터 인쇄할지를 나타내는 값을 가져오거나 설정합니다.Gets or sets a value indicating whether the printer prints multiple pages back-to-front or front-to-back.

PageOrientation PageOrientation PageOrientation PageOrientation

페이지 콘텐츠의 인쇄 방향을 나타내는 값을 가져오거나 설정합니다.Gets or sets a value indicating how the page content is oriented for printing.

PageResolution PageResolution PageResolution PageResolution

인쇄 작업에 사용할 페이지 해상도 수준을 가져오거나 설정합니다.Gets or sets the level of page resolution that the printer uses for a print job.

PageScalingFactor PageScalingFactor PageScalingFactor PageScalingFactor

페이지에서 인쇄 이미지를 확대하거나 축소하는 백분율을 가져오거나 설정합니다.Gets or sets the percentage by which the printer enlarges or reduces the print image on a page.

PagesPerSheet PagesPerSheet PagesPerSheet PagesPerSheet

용지의 한 면에 인쇄되는 페이지 수를 가져오거나 설정합니다.Gets or sets the number of pages that print on each printed side of a sheet of paper.

PagesPerSheetDirection PagesPerSheetDirection PagesPerSheetDirection PagesPerSheetDirection

용지의 한 면에 인쇄되는 여러 페이지의 정렬 방법을 나타내는 값을 가져오거나 설정합니다.Gets or sets a value indicating how a printer arranges multiple pages that print on each side of a sheet of paper.

PhotoPrintingIntent PhotoPrintingIntent PhotoPrintingIntent PhotoPrintingIntent

사진 인쇄 시 사용할 품질 수준을 품질 용어로 나타내는 값을 가져오거나 설정합니다.Gets or sets a value indicating in qualitative terms the level of quality the printer uses to print a photograph.

Stapling Stapling Stapling Stapling

프린터에서 여러 페이지를 스테이플링하는지 여부와 그 위치를 나타내는 값을 가져오거나 설정합니다.Gets or sets a value indicating whether, and where, a printer staples multiple pages.

TrueTypeFontMode TrueTypeFontMode TrueTypeFontMode TrueTypeFontMode

프린터에서 트루타입 글꼴이 사용된 텍스트를 처리하는 방법을 나타내는 값을 가져오거나 설정합니다.Gets or sets a value indicating how the printer handles text that uses TrueType fonts.

메서드

Clone() Clone() Clone() Clone()

이 개체 값의 전체 복사본을 만들어 이 PrintTicket의 수정 가능한 복제본을 만듭니다.Creates a modifiable clone of this PrintTicket, making deep copies of this object's values.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

지정한 개체와 현재 개체가 같은지 여부를 확인합니다.Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

기본 해시 함수로 작동합니다.Serves as the default hash function.

(Inherited from Object)
GetType() GetType() GetType() GetType()

현재 인스턴스의 Type을 가져옵니다.Gets the Type of the current instance.

(Inherited from Object)
GetXmlStream() GetXmlStream() GetXmlStream() GetXmlStream()

인쇄 스키마를 준수하는 XML 스트림으로 PrintTicket 속성 값을 나타내는 MemoryStream 개체를 반환합니다.Returns a MemoryStream object that represents the property values of a PrintTicket as an XML stream that conforms to the Print Schema.

MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

현재 Object의 단순 복사본을 만듭니다.Creates a shallow copy of the current Object.

(Inherited from Object)
SaveTo(Stream) SaveTo(Stream) SaveTo(Stream) SaveTo(Stream)

인쇄 스키마를 준수하는 XML 형식을 사용하여 PrintTicket 설정을 Stream 개체로 저장합니다.Saves the PrintTicket settings to a Stream object by using an XML format that conforms to the Print Schema.

ToString() ToString() ToString() ToString()

현재 개체를 나타내는 문자열을 반환합니다.Returns a string that represents the current object.

(Inherited from Object)

이벤트

PropertyChanged PropertyChanged PropertyChanged PropertyChanged

PrintTicket 속성이 변경되면 발생합니다.Occurs when any property of the PrintTicket changes.

적용 대상