PrintTicket PrintTicket PrintTicket PrintTicket Class

Définition

Définit les paramètres d'un travail d'impression.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
Héritage
PrintTicketPrintTicketPrintTicketPrintTicket
Implémente

Exemples

L’exemple suivant montre comment déterminer les fonctionnalités d’une imprimante spécifique et comment configurer un travail d’impression pour tirer parti de ces fonctionnalités.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()

Remarques

Un PrintTicket objet est une représentation simple au travail d’un certain type de document XML appelé un document PrintTicket.A PrintTicket object is an easy-to-work-with representation of a certain type of XML document called a PrintTicket document. Ce dernier est un ensemble d’instructions qui indiquent une imprimante comment définir ses différentes fonctionnalités (recto-verso, assemblage et agrafage).The latter is a set of instructions telling a printer how to set its various features (such as duplexing, collating, and stapling). Par exemple, pour que l’imprimante active son agrafage et agrafe les travaux d’impression dans le coin supérieur gauche, le document doit avoir un <JobStapleAllDocuments … > élément spécifie 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. L’élément est à son tour, représenté par le Stapling propriété de la PrintTicket objet.The element is, in turn, represented by the Stapling property of the PrintTicket object. Le document PrintTicket doit être conforme à la schéma d’impression.The PrintTicket document must conform to the Print Schema.

Le PrintTicket classe permet à votre application configurer les fonctionnalités de l’imprimante sans avoir à s’engager dans l’écriture directe de XML Stream objets.The PrintTicket class enables your application to configure the printer's features without having to engage in any direct writing of XML Stream objects.

Toutes les fonctionnalités les plus populaires d’imprimantes de fichiers et photos particuliers et professionnels sont représentées par les propriétés de PrintTicket la classe.All of the most popular features of home and business file and photo printers are represented by properties of PrintTicket the class. Mais le schéma d’impression définit bien d’autres, moins fréquent, fonctionnalités et il peuvent être étendus pour gérer les fonctionnalités de périphériques d’impression spécialisée.But the Print Schema defines many more, less common, features and it can be extended to handle features of specialty printing devices. Par conséquent, bien que le PrintTicket et PrintCapabilities classes ne peut pas être héritées, vous pouvez étendre le schéma d’impression à reconnaître les fonctionnalités de périphérique d’impression qui ne sont pas prises en compte dans le PrintTicket ou PrintCapabilities classes.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. Pour plus d'informations, consultez Guide pratique pour Étendre le schéma d’impression et de créer de nouvelles Classes de système d’impression.For more information see How to: Extend the Print Schema and Create New Print System Classes.

Remarque lorsque le PrintTicket objet est créé avec le constructeur qui accepte un document PrintTicket (comme un Stream) paramètre, l’intégralité de ce document est stocké dans un champ non public dans l’objet, y compris les éléments XML qui Express moins de fonctionnalités courantes qui ne sont pas représentées par une des propriétés publiques de la PrintTicket classe.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. En fait, si le pilote qui a produit le document PrintTicket utilise une extension privée de la schéma d’impression, autrement défini balisage est également stocké dans le cadre du document PrintTicket non public.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.

Attention

Classes contenues dans le System.Printing espace de noms ne sont pas pris en charge pour une utilisation dans un service de Windows ou application ASP.NET ou un service.Classes within the System.Printing namespace are not supported for use within a Windows service or ASP.NET application or service. Tente d’utiliser ces classes à partir d’un de ces types d’application peut générer des problèmes inattendus, tels que la diminution de service les exceptions de performances et d’exécution.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.

Si vous souhaitez imprimer à partir d’une application Windows Forms, consultez le System.Drawing.Printing espace de noms.If you want to print from a Windows Forms application, see the System.Drawing.Printing namespace.

Constructeurs

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

Initialise une nouvelle instance de la classe PrintTicket.Initializes a new instance of the PrintTicket class.

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

Initialise une nouvelle instance de la classe PrintTicket à l’aide d’un flux XML (contenant un document PrintTicket) qui respecte le schéma d’impression XML.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.

Propriétés

Collation Collation Collation Collation

Obtient ou définit une valeur indiquant si les copies du document imprimé sont assemblées.Gets or sets a value indicating whether the printer collates its output.

CopyCount CopyCount CopyCount CopyCount

Obtient ou définit le nombre de copies du document à imprimer.Gets or sets the number of copies for the print job.

DeviceFontSubstitution DeviceFontSubstitution DeviceFontSubstitution DeviceFontSubstitution

Obtient ou définit une valeur qui indique si l'imprimante substitue, au cours d'un travail d'impression, des polices basées sur périphérique aux polices basées dans l'ordinateur.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

Obtient ou définit une valeur indiquant quel type d'impression recto-verso, le cas échéant, l'imprimante utilise pour le travail d'impression.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

Obtient ou définit une valeur indiquant quel bac d'alimentation (bac à papier) utiliser.Gets or sets a value indicating what input bin (paper tray) to use.

OutputColor OutputColor OutputColor OutputColor

Obtient ou définit une valeur qui indique comment l'imprimante gère un contenu qui comporte des couleurs et des nuances de gris.Gets or sets a value indicating how the printer handles content that has color or shades of gray.

OutputQuality OutputQuality OutputQuality OutputQuality

Obtient ou définit une valeur qui indique la qualité de sortie pour le travail d'impression.Gets or sets a value indicating the quality of output for the print job.

PageBorderless PageBorderless PageBorderless PageBorderless

Obtient ou définit une valeur qui indique si le périphérique imprime le contenu jusqu'au bord du média ou laisse une marge non imprimée autour du bord.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

Obtient ou définit la taille de la page papier (ou autre média) qu'une imprimante utilise pour un travail d'impression.Gets or sets the page size for the paper (or other media) that a printer uses for a print job.

PageMediaType PageMediaType PageMediaType PageMediaType

Obtient ou définit une valeur indiquant quel sorte de papier (ou autre média) l'imprimante utilise pour le travail d'impression.Gets or sets a value indicating what sort of paper or media the printer uses for the print job.

PageOrder PageOrder PageOrder PageOrder

Obtient ou définit une valeur qui indique si l'imprimante imprime un ensemble de pages d'arrière en avant ou d'avant en arrière.Gets or sets a value indicating whether the printer prints multiple pages back-to-front or front-to-back.

PageOrientation PageOrientation PageOrientation PageOrientation

Obtient ou définit une valeur qui indique comment le contenu de page est orienté pour l'impression.Gets or sets a value indicating how the page content is oriented for printing.

PageResolution PageResolution PageResolution PageResolution

Obtient ou définit le niveau de résolution de page que l'imprimante utilise pour un travail d'impression.Gets or sets the level of page resolution that the printer uses for a print job.

PageScalingFactor PageScalingFactor PageScalingFactor PageScalingFactor

Obtient ou définit le pourcentage par lequel l'imprimante agrandit ou réduit l'image d'impression sur une page.Gets or sets the percentage by which the printer enlarges or reduces the print image on a page.

PagesPerSheet PagesPerSheet PagesPerSheet PagesPerSheet

Obtient ou définit le nombre des pages qui s'impriment sur chaque côté imprimé d'une feuille de papier.Gets or sets the number of pages that print on each printed side of a sheet of paper.

PagesPerSheetDirection PagesPerSheetDirection PagesPerSheetDirection PagesPerSheetDirection

Obtient ou définit une valeur qui indique comment une imprimante réorganise plusieurs pages qui s'impriment sur chaque côté d'une feuille de papier.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

Obtient ou définit une valeur qui indique en termes qualitatifs le niveau de qualité que l'imprimante utilise pour imprimer une photographie.Gets or sets a value indicating in qualitative terms the level of quality the printer uses to print a photograph.

Stapling Stapling Stapling Stapling

Obtient ou définit une valeur qui indique si, et où, une imprimante agrafe plusieurs pages.Gets or sets a value indicating whether, and where, a printer staples multiple pages.

TrueTypeFontMode TrueTypeFontMode TrueTypeFontMode TrueTypeFontMode

Obtient ou définit une valeur qui indique comment l'imprimante gère le texte qui utilise des polices TrueType.Gets or sets a value indicating how the printer handles text that uses TrueType fonts.

Méthodes

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

Crée un clone modifiable de ce PrintTicket, en créant des copies complètes des valeurs de cet objet.Creates a modifiable clone of this PrintTicket, making deep copies of this object's values.

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

Détermine si l'objet spécifié est identique à l'objet actuel.Determines whether the specified object is equal to the current object.

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

Fait office de fonction de hachage par défaut.Serves as the default hash function.

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

Obtient le Type de l'instance actuelle.Gets the Type of the current instance.

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

Retourne un objet MemoryStream qui représente les valeurs de propriété d’un PrintTicket sous la forme d’un flux XML qui respecte le schéma d’impression.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()

Crée une copie superficielle de l'objet Object actuel.Creates a shallow copy of the current Object.

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

Enregistre les paramètres PrintTicket sur un objet Stream à l’aide d’un format XML qui respecte le schéma d’impression.Saves the PrintTicket settings to a Stream object by using an XML format that conforms to the Print Schema.

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

Retourne une chaîne qui représente l'objet actuel.Returns a string that represents the current object.

(Inherited from Object)

Événements

PropertyChanged PropertyChanged PropertyChanged PropertyChanged

Ceci se produit lorsqu'une propriété de PrintTicket est modifiée.Occurs when any property of the PrintTicket changes.

S’applique à