PrintTicket Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Definuje nastavení tiskové úlohy.
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
- Dědičnost
-
PrintTicket
- Implementuje
Příklady
Následující příklad ukazuje, jak určit možnosti konkrétní tiskárny a jak nakonfigurovat tiskovou úlohu tak, aby je využívala.
// ---------------------- 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()
Poznámky
Objekt PrintTicket je snadno použitelný s reprezentací určitého typu dokumentu XML s názvem PrintTicket dokumentu. Druhá možnost je sada instrukcí, které tiskárně říkají, jak nastavit její různé funkce (jako je duplexní tisk, kolace a sešívání). Chcete-li například dát tiskárně pokyn, aby zapnula sešívač a sešívkování tiskových úloh v levém horním rohu, měl by <JobStapleAllDocuments … >
dokument prvek, který určuje StapleTopLeft. Prvek je zase reprezentován Stapling vlastností objektu PrintTicket . Dokument PrintTicket musí odpovídat schématu tisku.
Třída PrintTicket umožňuje vaší aplikaci konfigurovat funkce tiskárny, aniž by se musel zapojit do přímého zápisu objektů XML Stream .
Všechny nejoblíbenější funkce domácí a firemní tiskárny se soubory a fotografiemi jsou reprezentovány vlastnostmi PrintTicket třídy . Schéma tisku ale definuje mnohem více méně běžných funkcí a lze ho rozšířit o funkce speciálních tiskových zařízení. I když PrintTicket tedy třídy a PrintCapabilities nelze dědit, můžete rozšířit schéma tisku , aby rozpoznalo funkce tiskového zařízení, které nejsou zohledněny ve PrintTicket třídách nebo PrintCapabilities . Další informace naleznete v tématu Postupy: Rozšíření schématu tisku a Vytvoření nových tříd tiskového systému.
PoznámkaPrintTicket Při vytvoření objektu pomocí konstruktoru, který přebírá PrintTicket document (jako Stream) parametr, je celý dokument uložen v neveřejné poli v objektu, včetně elementů XML v něm, které vyjadřují méně běžné funkce, které nejsou reprezentovány žádným z veřejných vlastností PrintTicket třídy. Ve skutečnosti, pokud ovladač, který vytvořil PrintTicket dokument používá privátní rozšíření print schématu, že soukromě definované značky je také uložen jako součást neveřejného dokumentu PrintTicket.
Upozornění
Třídy v rámci System.Printing oboru názvů nejsou podporovány pro použití v rámci služby systému Windows nebo ASP.NET aplikace nebo služby. Pokus o použití těchto tříd z jednoho z těchto typů aplikací může způsobit neočekávané problémy, jako je snížení výkonu služby a výjimky za běhu.
Pokud chcete tisknout z model Windows Forms aplikace, podívejte se na System.Drawing.Printing obor názvů.
Konstruktory
PrintTicket() |
Inicializuje novou instanci PrintTicket třídy . |
PrintTicket(Stream) |
Inicializuje novou instanci PrintTicket třídy pomocí datového proudu XML (který obsahuje dokument PrintTicket), který je v souladu se schématem tisku XML. |
Vlastnosti
Collation |
Získá nebo nastaví hodnotu označující, zda tiskárna kompletuje výstup. |
CopyCount |
Získá nebo nastaví počet kopií pro tiskovou úlohu. |
DeviceFontSubstitution |
Získá nebo nastaví hodnotu označující, zda tiskárna nahradí písma zařízení pro písma počítače v tiskové úloze. |
Duplexing |
Získá nebo nastaví hodnotu označující druh oboustranného tisku, pokud existuje, tiskárna používá pro tiskovou úlohu. |
InputBin |
Získá nebo nastaví hodnotu určující vstupní přihrádku (zásobník papíru) použít. |
OutputColor |
Získá nebo nastaví hodnotu označující, jak tiskárna zpracovává obsah, který má barvu nebo odstíny šedé. |
OutputQuality |
Získá nebo nastaví hodnotu označující kvalitu výstupu tiskové úlohy. |
PageBorderless |
Získá nebo nastaví hodnotu označující, zda zařízení tiskne obsah na okraj média nebo ponechá netisknutou okraj kolem okraje. |
PageMediaSize |
Získá nebo nastaví velikost stránky pro papír (nebo jiné médium), které tiskárna používá pro tiskovou úlohu. |
PageMediaType |
Získá nebo nastaví hodnotu označující, jaký druh papíru nebo média tiskárna používá pro tiskovou úlohu. |
PageOrder |
Získá nebo nastaví hodnotu označující, zda tiskárna tiskne více stránek zepředu nebo zepředu dozadu. |
PageOrientation |
Získá nebo nastaví hodnotu označující, jak je obsah stránky orientovaný pro tisk. |
PageResolution |
Získá nebo nastaví úroveň rozlišení stránky, kterou tiskárna používá pro tiskovou úlohu. |
PageScalingFactor |
Získá nebo nastaví procento, o které tiskárna zvětší nebo zmenší tisk obrazu na stránce. |
PagesPerSheet |
Získá nebo nastaví počet stránek, které se vytisknou na každé vytištěné straně listu papíru. |
PagesPerSheetDirection |
Získá nebo nastaví hodnotu označující, jak tiskárna uspořádá více stránek, které se vytisknou na každé straně listu papíru. |
PhotoPrintingIntent |
Získá nebo nastaví hodnotu označující v kvalitativních termínech úroveň kvality, kterou tiskárna používá k tisku fotografie. |
Stapling |
Získá nebo nastaví hodnotu označující, zda a kde tiskárna sešívuje více stránek. |
TrueTypeFontMode |
Získá nebo nastaví hodnotu označující, jak tiskárna zpracovává text, který používá písma TrueType. |
Metody
Clone() |
Vytvoří upravitelný klon tohoto PrintTicketobjektu a vytvoří hluboké kopie hodnot tohoto objektu. |
Equals(Object) |
Určí, zda se zadaný objekt rovná aktuálnímu objektu. (Zděděno od Object) |
GetHashCode() |
Slouží jako výchozí hashovací funkce. (Zděděno od Object) |
GetType() |
Type Získá z aktuální instance. (Zděděno od Object) |
GetXmlStream() |
MemoryStream Vrátí objekt, který představuje hodnoty vlastnosti objektu PrintTicket jako datový proud XML, který odpovídá schématu tisku. |
MemberwiseClone() |
Vytvoří mělkou kopii aktuálního Objectsouboru . (Zděděno od Object) |
SaveTo(Stream) |
Uloží PrintTicket nastavení do objektu Stream pomocí formátu XML, který odpovídá schématu tisku. |
ToString() |
Vrátí řetězec, který představuje aktuální objekt. (Zděděno od Object) |
Událost
PropertyChanged |
Vyvolá se při změně jakékoli vlastnosti PrintTicket . |
Platí pro
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat problémy z GitHub coby mechanismus zpětné vazby pro obsah a nahrazovat ho novým systémem zpětné vazby. Další informace naleznete v tématu:Odeslat a zobrazit názory pro