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()

注釈

オブジェクトは、 PrintTicket ドキュメントと呼ばれる特定の種類の XML ドキュメントを簡単に表現できるものです。 PrintTicketA 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). たとえば、左上隅にあるホチキス止めとホチキス止め印刷ジョブをオンにするようプリンターに指示するには、 StapleTopLeft<JobStapleAllDocuments … >指定する要素がドキュメントに含まれています。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 ドキュメントは、印刷スキーマに準拠している必要があります。The PrintTicket document must conform to the Print Schema.

クラスを使用すると、アプリケーションで、XML Streamオブジェクトを直接記述することなく、プリンターの機能を構成できます。 PrintTicketThe 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. ただし、印刷スキーマでは、あまり一般的ではない機能が多数定義されており、特殊な印刷デバイスの機能を処理するように拡張することができます。But the Print Schema defines many more, less common, features and it can be extended to handle features of specialty printing devices. PrintCapabilities PrintCapabilities PrintTicketしたがって、クラスとクラスを継承することはできませんが、またはクラスでは考慮されていない印刷デバイス機能を認識するように印刷スキーマを拡張できます。 PrintTicketSo, 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 ドキュメント ( Streamas) パラメーターを受け取るコンストラクターを使用して作成された場合、ドキュメント全体がオブジェクトの非パブリックフィールドに格納されます。これには、その中にある XML 要素が含まれます。 PrintTicketPrintTicketクラスのパブリックプロパティによって表されない機能。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 ドキュメントを生成したドライバーが印刷スキーマのプライベート拡張機能を使用している場合、そのプライベートに定義されたマークアップは、非パブリックな 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 フォームアプリケーションから印刷する場合は、 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

TrueType フォントが使用されているテキストに関する、プリンターでの処理方法を示す値を取得または設定します。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()

PrintTicket のプロパティ値を、印刷スキーマに準拠した XML ストリームとして表す、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.

適用対象