PrintCapabilities Sınıf
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Yazıcının özelliklerini tanımlar.
public ref class PrintCapabilities sealed
public sealed class PrintCapabilities
type PrintCapabilities = class
Public NotInheritable Class PrintCapabilities
- Devralma
-
PrintCapabilities
Ö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
PrintCapabilities Nesne, PrintCapabilities belgesi olarak adlandırılan belirli bir XML belgesi türünün gösterimiyle çalışması kolay bir nesnedir. İkincisi, yazıcının tüm özelliklerinin ve geçerli ayarlarının anlık görüntüsüdür. Örneğin, yazıcı renkli yazdırmayı destekliyorsa, belgenin renk çıkışının nasıl işleneceğini belirleyen bir <PageOutputColor … > öğesi olur. öğesi de nesnenin OutputColorCapabilityPrintCapabilities özelliğiyle temsil edilir. Yazıcı rengi desteklemiyorsa, belgede öğe yoktur <PageOutputColor … > ve özelliğinin OutputColorCapability değeri olur null. PrintCapabilities belgesi , Yazdırma Şemasına uygun olmalıdır.
sınıfı, PrintCapabilities xml nesnelerinin doğrudan okunmasıyla ilgilenmek zorunda kalmadan uygulamanızın bir yazıcının Stream özelliklerini almasını sağlar.
Hem ev hem de iş için dosya ve fotoğraf yazıcılarının en popüler özelliklerinin tümü sınıf tarafından PrintCapabilities kapsüllenir. Ancak , Yazdırma Şeması çok daha fazla, daha az yaygın olan özellikleri 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 katılmayan yazdırma cihazı özelliklerini tanımak için Yazdırma ŞemasınıPrintTicket genişletebilirsiniz.
NotPrintCapabilities Nesne, PrintCapabilities belgesi (olarak Stream) parametresini alan oluşturucuyla oluşturulduğunda, bu belgenin tamamı, sınıfın genel özelliklerinden PrintCapabilities herhangi biri tarafından temsil edilmeyen daha az ortak özellikleri ifade eden xml öğeleri de dahil olmak üzere nesnedeki genel olmayan bir alanda depolanır. Aslında, PrintCapabilities belgesini oluşturan sürücü Yazdırma Şemasının özel bir uzantısını kullanıyorsa, bu özel tanımlı işaretleme de genel olmayan PrintCapabilities belgesinin bir parçası olarak depolanır.
Dikkat
Ad alanı içindeki System.Printing sınıflar bir Windows hizmeti veya ASP.NET uygulama veya hizmet içinde kullanılmak üzere desteklenmez. Bu uygulama türlerinden birinin içinden bu sınıfları kullanmaya çalışmak, hizmet performansının ve çalışma zamanı özel durumlarının azalması gibi beklenmeyen sorunlara neden olabilir.
Bir Windows Forms uygulamasından yazdırmak istiyorsanız ad alanına System.Drawing.Printing bakın.
Oluşturucular
| Name | Description |
|---|---|
| PrintCapabilities(Stream) |
Yazıcı özelliklerini belirten ve XML Yazdırma Şemasına uyan bir XML akışı (PrintCapabilities belgesi içeren) kullanarak sınıfının yeni bir örneğini PrintCapabilities başlatır. |
Özellikler
| Name | Description |
|---|---|
| CollationCapability |
Bir yazıcının harmanlama özelliklerini tanımlayan bir değer koleksiyonu alır. |
| DeviceFontSubstitutionCapability |
Bir yazıcının bilgisayar tabanlı yazı tipleri için cihaz tabanlı yazı tiplerini değiştirip değiştiremeyeceğini ve nasıl değiştirebileceğini belirleyen bir değer koleksiyonu alır. |
| DuplexingCapability |
Yazıcının iki taraflı yazdırmayı gerçekleştirip gerçekleştiremeyeceğini ve nasıl gerçekleştirebileceğini belirleyen bir değer koleksiyonu alır. |
| InputBinCapability |
Hangi giriş kutusunun (kağıt tepsisi) kullanıldığını gösteren bir değer koleksiyonu alır. |
| MaxCopyCount |
Cihazın tek bir yazdırma işinde yazdırabileceği maksimum kopya sayısını gösteren bir değer alır. |
| OrientedPageMediaHeight |
Sayfadaki görüntülenebilir alanın yüksekliğini belirten bir değer alır; burada yükseklik, sayfanın yönlendirmesine göre dikey boyut anlamına gelir. |
| OrientedPageMediaWidth |
Sayfadaki görüntülenebilir alanın genişliğini belirten bir değer alır; burada genişlik, sayfanın yönlendirmesine göre yatay boyut anlamına gelir. |
| OutputColorCapability |
Bir yazıcının renkleri ve gri tonlarıyla içerik yazdırma yollarını belirten bir değer koleksiyonu alır. |
| OutputQualityCapability |
Yazıcının desteklediği çıkış kalitesi türlerini gösteren bir değer koleksiyonu alır. |
| PageBorderlessCapability |
Yazıcının medyanın kenarına kadar yazdırıp yazdıramayacağını gösteren bir değer koleksiyonu alır. |
| PageImageableArea |
Yazıcının kullanabileceği bir sayfanın alanını temsil eden bir nesne alır. |
| PageMediaSizeCapability |
Yazıcının PageMediaSize desteklediği kağıt ve medya boyutlarını tanımlayan bir nesne koleksiyonu alır. |
| PageMediaTypeCapability |
Yazıcının hangi kağıt türlerini ve diğer medyaları desteklediğini tanımlayan bir değer koleksiyonu alır. |
| PageOrderCapability |
Yazıcının birden çok sayfalı belgeleri önden arkaya, arkadan öne veya her iki yoldan da yazdırıp yazdıramayacağını gösteren bir değer koleksiyonu alır. |
| PageOrientationCapability |
Yazıcının hangi sayfa yönlendirme türlerini desteklediğini tanımlayan bir değer koleksiyonu alır. |
| PageResolutionCapability |
Yazıcının PageResolution hangi sayfa çözünürlüğü düzeylerini desteklediğini tanımlayan bir nesne koleksiyonu alır. |
| PageScalingFactorRange |
Yazıcının sayfadaki yazdırma görüntüsünü büyütebileceği veya azaltabileceği en yüksek ve en düşük yüzdeleri alır. |
| PagesPerSheetCapability |
Her biri bir kağıdın tek bir tarafına yazdırmak için kullanıcının seçebileceği sayfa sayısını tanımlayan bir tamsayı koleksiyonu alır. |
| PagesPerSheetDirectionCapability |
Bir yazıcının bir kağıt sayfasının tek bir tarafında birden çok sayfa sunmak için hangi desenleri desteklediğini tanımlayan bir değer koleksiyonu alır. |
| PhotoPrintingIntentCapability |
Yazıcının fotoğrafları yazdırmak için desteklediği kalite seçeneklerini tanımlayan bir değer koleksiyonu alır. |
| StaplingCapability |
Yazıcının desteklediği otomatik zımbalama türlerini tanımlayan bir değer koleksiyonu alır. |
| TrueTypeFontModeCapability |
Yazıcının TrueType yazı tiplerini işlemek için desteklediği yöntemleri tanımlayan bir değer koleksiyonu alır. |
Yöntemler
| Name | Description |
|---|---|
| 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() |
Geçerli örneğin Type alır. (Devralındığı yer: Object) |
| MemberwiseClone() |
Geçerli Objectbasit bir kopyasını oluşturur. (Devralındığı yer: Object) |
| ToString() |
Geçerli nesneyi temsil eden bir dize döndürür. (Devralındığı yer: Object) |