PrintTicket Sınıf

Tanım

Yazdırma işinin ayarlarını tanımlar.

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
Devralma
PrintTicket
Uygulamalar

Örnekler

Aşağıdaki örnekte, belirli bir yazıcının özelliklerini belirleme ve yazdırma işini bunlardan yararlanacak şekilde yapılandırma adımları gösterilmektedir.

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

Açıklamalar

PrintTicket Nesne, PrintTicket belgesi olarak adlandırılan belirli bir XML belgesi türünün temsiliyle çalışması kolay bir belgedir. İkincisi, yazıcının çeşitli özelliklerini (çift yönlü, harmanlama ve zımbalama gibi) nasıl ayarlayacağını belirten bir yönerge kümesidir. Örneğin, yazıcıdan zımbalama ve zımbalama yazdırma işlerini sol üst köşede açmasını bildirmek için, belgede StapleTopLeft öğesini belirten bir <JobStapleAllDocuments … > öğe olacaktır. öğesi de nesnenin StaplingPrintTicket özelliğiyle temsil edilir. PrintTicket belgesi Yazdırma Şemasına uygun olmalıdır.

sınıfı, PrintTicket uygulamanızın XML Stream nesnelerini doğrudan yazmak zorunda kalmadan yazıcının özelliklerini yapılandırmasına olanak tanır.

Ev ve iş dosyası ve fotoğraf yazıcılarının en popüler özelliklerinin tümü sınıfın PrintTicket özellikleriyle temsil edilir. Ancak Yazdırma Şeması çok daha fazla, daha az yaygın ve özellik tanımlar ve özel yazdırma cihazlarının özelliklerini işlemek için genişletilebilir. Bu nedenle, ve PrintCapabilities sınıfları devralınamasa daPrintTicket, veya PrintCapabilities sınıflarında hesaba bağlanmayan yazdırma cihazı özelliklerini tanımak için Yazdırma ŞemasınıPrintTicket genişletebilirsiniz. Daha fazla bilgi için bkz . Nasıl yapılır: Yazdırma Şemasını Genişletme ve Yeni Yazdırma Sistemi Sınıfları Oluşturma.

NotPrintTicket Nesne, PrintTicket belgesi (olarak Stream) parametresini alan oluşturucuyla oluşturulduğunda, bu belgenin tamamı nesnedeki genel olmayan bir alanda depolanır ve içindeki XML öğeleri sınıfın genel özelliklerinden PrintTicket herhangi biriyle temsil edilmeyen daha az ortak özellikleri ifade eder. Aslında, PrintTicket belgesini oluşturan sürücü Yazdırma Şemasının özel bir uzantısını kullanıyorsa, özel olarak tanımlanan işaretleme de genel olmayan PrintTicket belgesinin bir parçası olarak depolanır.

Dikkat

Ad alanı içindeki System.Printing sınıflar bir Windows hizmeti veya ASP.NET uygulaması ya da hizmeti içinde kullanılmak üzere desteklenmez. Bu sınıfları bu uygulama türlerinden birinin içinden kullanmaya çalışmak, hizmet performansının azalması ve çalışma zamanı özel durumları gibi beklenmeyen sorunlara neden olabilir.

Bir Windows Forms uygulamasından yazdırmak istiyorsanız ad alanına System.Drawing.Printing bakın.

Oluşturucular

PrintTicket()

PrintTicket sınıfının yeni bir örneğini başlatır.

PrintTicket(Stream)

XML Yazdırma Şeması ile uyumlu bir XML akışı (PrintTicket belgesi içeren) kullanarak sınıfının yeni bir örneğini PrintTicket başlatır.

Özellikler

Collation

Yazıcının çıkışını harmanlayıp harmanlamadığını belirten bir değer alır veya ayarlar.

CopyCount

Yazdırma işi için kopya sayısını alır veya ayarlar.

DeviceFontSubstitution

Yazıcının yazdırma işinde bilgisayar tabanlı yazı tipleri için cihaz tabanlı yazı tiplerini değiştirip değiştirmediğini belirten bir değer alır veya ayarlar.

Duplexing

Yazıcının yazdırma işi için kullandığı çift taraflı yazdırma türünü belirten bir değer alır veya ayarlar.

InputBin

Hangi giriş kutusunun (kağıt tepsisi) kullanılacağını belirten bir değer alır veya ayarlar.

OutputColor

Yazıcının gri renkli veya tonlu içeriği nasıl işlediğini gösteren bir değer alır veya ayarlar.

OutputQuality

Yazdırma işi için çıkışın kalitesini belirten bir değer alır veya ayarlar.

PageBorderless

Cihazın medyanın kenarına içerik yazdırdığını veya kenar çevresinde yazdırılmamış bir kenar boşluğu bırakıp bırakmadığını belirten bir değer alır veya ayarlar.

PageMediaSize

Yazıcının yazdırma işi için kullandığı kağıdın (veya başka bir medyanın) sayfa boyutunu alır veya ayarlar.

PageMediaType

Yazıcının yazdırma işi için ne tür kağıt veya medya kullandığını belirten bir değer alır veya ayarlar.

PageOrder

Yazıcının birden çok sayfayı önden öne mi yoksa önden arkaya mı yazdırdığını gösteren bir değer alır veya ayarlar.

PageOrientation

Sayfa içeriğinin yazdırma için nasıl yönlendirildiğini gösteren bir değer alır veya ayarlar.

PageResolution

Yazıcının bir yazdırma işi için kullandığı sayfa çözünürlüğü düzeyini alır veya ayarlar.

PageScalingFactor

Yazıcının sayfadaki yazdırma görüntüsünü büyütme veya azaltma yüzdesini alır veya ayarlar.

PagesPerSheet

Kağıdın her yazdırılan tarafına yazdırılan sayfa sayısını alır veya ayarlar.

PagesPerSheetDirection

Yazıcının kağıdın her iki tarafına yazdıran birden çok sayfayı nasıl düzenlediğini gösteren bir değer alır veya ayarlar.

PhotoPrintingIntent

Yazıcının fotoğraf yazdırmak için kullandığı kalite düzeyini nitel terimle belirten bir değer alır veya ayarlar.

Stapling

Yazıcının birden çok sayfayı zımbalayıp zımbalayıp zımbalamadığını ve nereye zımbalayıp zımbalamadığını belirten bir değer alır veya ayarlar.

TrueTypeFontMode

Yazıcının TrueType yazı tiplerini kullanan metni nasıl işlediğini belirten bir değer alır veya ayarlar.

Yöntemler

Clone()

Bu PrintTicketnesnenin değerlerinin derin kopyalarını oluşturarak bu öğesinin değiştirilebilir bir kopyasını oluşturur.

Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.

(Devralındığı yer: Object)
GetHashCode()

Varsayılan karma işlevi işlevi görür.

(Devralındığı yer: Object)
GetType()

Type Geçerli örneğini alır.

(Devralındığı yer: Object)
GetXmlStream()

MemoryStream Bir öğesinin özellik değerlerini, Yazdırma ŞemasınaPrintTicket uygun bir XML akışı olarak temsil eden bir nesnesi döndürür.

MemberwiseClone()

Geçerli Objectöğesinin sığ bir kopyasını oluşturur.

(Devralındığı yer: Object)
SaveTo(Stream)

Yazdırma ŞemasınaPrintTicket uygun bir XML biçimi kullanarak ayarları bir Stream nesneye kaydeder.

ToString()

Geçerli nesneyi temsil eden dizeyi döndürür.

(Devralındığı yer: Object)

Ekinlikler

PropertyChanged

Değişikliklerin herhangi bir özelliği PrintTicket olduğunda gerçekleşir.

Şunlara uygulanır