System.Printing Namespace
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Provides classes that enable you to automate the management of print servers, print queues, and print jobs.
Classes
LocalPrintServer |
Represents the local print server (the computer on which your application is running) and enables management of its print queues. |
PageImageableArea |
Represents the area of a page that can be printed. |
PageMediaSize |
Describes the page size for paper or other media. |
PageResolution |
Defines the page resolution of printed output as either a qualitative value or as dots per inch, or both. |
PageScalingFactorRange |
Specifies a range of percentages by which a printer can enlarge or reduce the print image on a page. |
PrintCapabilities |
Defines the capabilities of a printer. |
PrintCommitAttributesException |
The exception that is thrown when an error condition prevents some attributes from being committed by a PrintSystemObject to the actual computer, printer, or device that the object represents. |
PrintDocumentImageableArea |
Specifies the size of the paper (or other media), the size of the imageable area, and the location of the imageable area. |
PrintDriver |
Represents a print driver. |
PrintFilter |
Defines disposal behavior that is common to both the PrintDriver and PrintProcessor classes. PrintFilter supports the Windows Presentation Foundation (WPF) infrastructure and is not intended to be used directly from your code. |
PrintingCanceledException |
The exception that occurs when code attempts to access a canceled print job. |
PrintingNotSupportedException |
The exception that is thrown when a printing operation is not supported. |
PrintJobException |
The exception that occurs when the print job does not run correctly. |
PrintJobInfoCollection |
Represents one or more PrintSystemJobInfo objects. |
PrintJobSettings |
Describes a print job. |
PrintPort |
Represents a printer port on a print server. Each print queue has a print port assigned to it. |
PrintProcessor |
Represents a print processor on a print server. |
PrintQueue |
Manages printers and print jobs. |
PrintQueueCollection |
Represents a collection of PrintQueue objects. |
PrintQueueException |
The exception that is thrown when an error condition prevents the accessing or creation of a PrintQueue. |
PrintQueueStream |
A stream that represents a spooled print job in a print queue. |
PrintQueueStringProperty |
Represents one, and only one, of three possible properties of a print queue: Location, Comment, or ShareName. |
PrintServer |
Manages the print queues on a print server, which is usually a computer, but can be a dedicated hardware print server appliance. |
PrintServerException |
The exception that occurs when an error condition prevents the accessing or creation of a PrintServer. |
PrintSystemException |
The exception that occurs when an error condition prevents accessing or creating a PrintSystemObject. |
PrintSystemJobInfo |
Defines a print job in detail. |
PrintSystemObject |
Defines basic properties and methods that are common to the objects of the printing system. Classes that derive from this class represent such objects as print queues, print servers, and print jobs. |
PrintSystemObjectPropertiesChangedEventArgs |
Provides data for a PropertiesChanged event, which you must create. |
PrintSystemObjectPropertyChangedEventArgs |
Provides data for a PropertyChanged event, which you must create. |
PrintSystemObjects |
Represents a collection of print system objects. |
PrintTicket |
Defines the settings of a print job. |
Structs
ValidationResult |
Represents a merged PrintTicket that is guaranteed to be viable, with a report of any settings that were changed to make it viable. |
Enums
Collation |
Specifies whether a printer collates output when it prints multiple copies of a multi-page print job. |
ConflictStatus |
Specifies whether any changes were made to a merged PrintTicket to ensure a viable PrintTicket. |
DeviceFontSubstitution |
Specifies whether device font substitution is enabled on a printer. |
Duplexing |
Specifies whether a printer uses one-sided printing or some type of two-sided (duplex) printing. |
EnumeratedPrintQueueTypes |
Specifies attributes of print queues. |
InputBin |
Specifies the input bin that is used as the source of blank paper or other print media. |
LocalPrintServerIndexedProperty |
Specifies the properties of a LocalPrintServer object that are initialized when it is constructed. |
OutputColor |
Specifies how to print content that contains color or shades of gray. |
OutputQuality |
Specifies the types of output quality for a print device. |
PageBorderless |
Specifies whether a print device prints to the edge of the media or provides an unprinted margin around the edge. |
PageMediaSizeName |
Specifies the page size or roll width of the paper or other print media. |
PageMediaType |
Specifies types of printing paper or other media. |
PageOrder |
Specifies whether a print device prints multi-page documents from front-to-back or back-to-front. |
PageOrientation |
Specifies how pages of content are oriented on print media. |
PageQualitativeResolution |
Specifies the page resolution as a qualitative, non-numerical, value. |
PagesPerSheetDirection |
Specifies the arrangement of pages when more than one page of content appears on a single side of print media. |
PhotoPrintingIntent |
Specifies the quality of output when a photograph is printed. The printer driver translates the PhotoPrintingIntent into quantitative values for resolution and other quality factors. |
PrintJobPriority |
Specifies a non-numerical priority for a print job relative to other print jobs in the print queue. |
PrintJobStatus |
Specifies the current status of a print job in a print queue. |
PrintJobType |
Specifies whether the print job uses XML Paper Specification (XPS). |
PrintQueueAttributes |
Specifies the attributes of a print queue and its printer. |
PrintQueueIndexedProperty |
Specifies the properties that are initialized when a PrintQueue object is constructed. |
PrintQueueStatus |
Specifies the status of a print queue or its printer. |
PrintQueueStringPropertyType |
Specifies the intended meaning of a PrintQueueStringProperty. |
PrintServerEventLoggingTypes |
Specifies the types of events that can be logged by a PrintServer. |
PrintServerIndexedProperty |
Specifies the properties of a PrintServer object that are initialized when it is constructed. |
PrintSystemDesiredAccess |
Specifies the different access rights (or levels of access) for printing objects. |
PrintSystemObjectLoadMode |
Specifies whether the properties of an object are initialized when the object loads. |
PrintTicketScope |
Specifies whether a PrintTicket applies to an entire print job, one document within the print job, or just a page within the print job. |
Stapling |
Specifies whether, and where, a printer staples a multi-page document. |
TrueTypeFontMode |
Specifies how a printer handles text that is formatted with a TrueType font. |
Remarks
This namespace contains the following core classes:
The PrintSystemObject class, which is the base class for the other core printing classes.
The PrintServer class, which represents an actual print server, usually a computer.
The PrintQueue class, which represents an actual print queue and its printer.
The PrintSystemJobInfo class, which represents a particular print job.
The PrintTicket class, which instructs the printer how to process a print job.
Classes derived from the PrintSystemObject class each have a Commit and a Refresh method. You must use these methods to ensure that instances of the classes are synchronized with the hardware or software components that they represent.
The System.Printing namespace also includes many enumerations that describe printer capabilities, such as whether a printer can produce collated output, and that specify instructions to printers, such as the paper size to use for a print job.
This namespace is part of the enhanced printing services provided with Windows Presentation Foundation. Managed code developers using Windows Forms must use the APIs in the System.Drawing.Printing namespace.
Caution
Classes within the System.Printing namespace are not supported for use within a Windows service or ASP.NET application or service. 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.