Auf Englisch lesen

Teilen über


PrintCapabilities.CollationCapability Eigenschaft

Definition

Ruft eine Auflistung von Werten ab, die die von einem Drucker unterstützten Sortierreihenfolgen identifizieren.

C#
public System.Collections.ObjectModel.ReadOnlyCollection<System.Printing.Collation> CollationCapability { get; }

Eigenschaftswert

Eine ReadOnlyCollection<T> mit Collation-Werten.

Beispiele

Das folgende Beispiel zeigt, wie Sie diese Eigenschaft verwenden, um die Funktionen eines bestimmten Druckers zu bestimmen und einen Druckauftrag zu konfigurieren, um sie zu nutzen.

C#
// ---------------------- 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()

Hinweise

Ein Standarddrucker sortiert in der Regel die Ausgabe, indem jede Seite der ersten Kopie, dann jede Seite der zweiten Kopie usw. gedruckt wird. Wenn ein Standarddrucker nicht sortiert wird, druckt er jede Kopie der ersten Seite, dann jede Kopie der zweiten Seite usw.

Einige Drucker sind speziell mit Sortierbehältern ausgestattet. Der Druckablauf für diese speziell ausgestatteten Drucker kann von denen von Standarddruckern abweichen; das Ergebnis ist jedoch das gleiche: Jede Kopie eines mehrseitigen Druckauftrags enthält alle zugehörigen Seiten in der richtigen Reihenfolge ohne manuelle Sortierung.

Wenn der Drucker die Sortierung nicht unterstützt, ist die Sammlung leer.

Diese Eigenschaft entspricht dem Schlüsselwort (keyword) des Print-SchemasDocumentCollate, nicht dem JobCollateAllDocuments Schlüsselwort (keyword).

Gilt für:

Produkt Versionen
.NET Framework 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9