Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
Collapse the table of content
Expand the table of content

System.Printing Namespace

Provides classes that enable you to automate the management of print servers, print queues, and print jobs.

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 (WPF). Managed code developers using Windows Forms must use the API in the System.Drawing.Printing namespace.

Caution note 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.

  Class Description
Public class LocalPrintServer Represents the local print server (the computer on which your application is running) and enables management of its print queues.
Public class PageImageableArea Represents the area of a page that can be printed.
Public class PageMediaSize Describes the page size for paper or other media.
Public class PageResolution Defines the page resolution of printed output as either a qualitative value or as dots per inch, or both.
Public class PageScalingFactorRange Specifies a range of percentages by which a printer can enlarge or reduce the print image on a page.
Public class PrintCapabilities Defines the capabilities of a printer.
Public class 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.
Public class PrintDocumentImageableArea Specifies the size of the paper (or other media), the size of the imageable area, and the location of the imageable area.
Public class PrintDriver Represents a print driver.
Public class 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.
Public class PrintingCanceledException The exception that occurs when code attempts to access a canceled print job.
Public class PrintingNotSupportedException The exception that is thrown when a printing operation is not supported.
Public class PrintJobException The exception that occurs when the print job does not run correctly.
Public class PrintJobInfoCollection Represents one or more PrintSystemJobInfo objects.
Public class PrintJobSettings Describes a print job.
Public class PrintPort Represents a printer port on a print server. Each print queue has a print port assigned to it.
Public class PrintProcessor Represents a print processor on a print server.
Public class PrintQueue Manages printers and print jobs.
Public class PrintQueueCollection Represents a collection of PrintQueue objects.
Public class PrintQueueException The exception that is thrown when an error condition prevents the accessing or creation of a PrintQueue.
Public class PrintQueueStream A stream that represents a spooled print job in a print queue.
Public class PrintQueueStringProperty Represents one, and only one, of three possible properties of a print queue: Location, Comment, or ShareName.
Public class PrintServer Manages the print queues on a print server, which is usually a computer, but can be a dedicated hardware print server appliance.
Public class PrintServerException The exception that occurs when an error condition prevents the accessing or creation of a PrintServer.
Public class PrintSystemException The exception that occurs when an error condition prevents accessing or creating a PrintSystemObject.
Public class PrintSystemJobInfo Defines a print job in detail.
Public class 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.
Public class PrintSystemObjectPropertiesChangedEventArgs Provides data for a PropertiesChanged event, which you must create.
Public class PrintSystemObjectPropertyChangedEventArgs Provides data for a PropertyChanged event, which you must create.
Public class PrintSystemObjects Represents a collection of print system objects.
Public class PrintTicket Defines the settings of a print job.

  Structure Description
Public structure ValidationResult Represents a merged PrintTicket that is guaranteed to be viable, with a report of any settings that were changed to make it viable.

  Enumeration Description
Public enumeration Collation Specifies whether a printer collates output when it prints multiple copies of a multi-page print job.
Public enumeration ConflictStatus Specifies whether any changes were made to a merged PrintTicket to ensure a viable PrintTicket.
Public enumeration DeviceFontSubstitution Specifies whether device font substitution is enabled on a printer.
Public enumeration Duplexing Specifies whether a printer uses one-sided printing or some type of two-sided (duplex) printing.
Public enumeration EnumeratedPrintQueueTypes Specifies attributes of print queues.
Public enumeration InputBin Specifies the input bin that is used as the source of blank paper or other print media.
Public enumeration LocalPrintServerIndexedProperty Specifies the properties of a LocalPrintServer object that are initialized when it is constructed.
Public enumeration OutputColor Specifies how to print content that contains color or shades of gray.
Public enumeration OutputQuality Specifies the types of output quality for a print device.
Public enumeration PageBorderless Specifies whether a print device prints to the edge of the media or provides an unprinted margin around the edge.
Public enumeration PageMediaSizeName Specifies the page size or roll width of the paper or other print media.
Public enumeration PageMediaType Specifies types of printing paper or other media.
Public enumeration PageOrder Specifies whether a print device prints multi-page documents from front-to-back or back-to-front.
Public enumeration PageOrientation Specifies how pages of content are oriented on print media.
Public enumeration PageQualitativeResolution Specifies the page resolution as a qualitative, non-numerical, value.
Public enumeration PagesPerSheetDirection Specifies the arrangement of pages when more than one page of content appears on a single side of print media.
Public enumeration 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.
Public enumeration PrintJobPriority Specifies a non-numerical priority for a print job relative to other print jobs in the print queue.
Public enumeration PrintJobStatus Specifies the current status of a print job in a print queue.
Public enumeration PrintJobType Specifies whether the print job uses XML Paper Specification (XPS).
Public enumeration PrintQueueAttributes Specifies the attributes of a print queue and its printer.
Public enumeration PrintQueueIndexedProperty Specifies the properties that are initialized when a PrintQueue object is constructed.
Public enumeration PrintQueueStatus Specifies the status of a print queue or its printer.
Public enumeration PrintQueueStringPropertyType Specifies the intended meaning of a PrintQueueStringProperty.
Public enumeration PrintServerEventLoggingTypes Specifies the types of events that can be logged by a PrintServer.
Public enumeration PrintServerIndexedProperty Specifies the properties of a PrintServer object that are initialized when it is constructed.
Public enumeration PrintSystemDesiredAccess Specifies the different access rights (or levels of access) for printing objects.
Public enumeration PrintSystemObjectLoadMode Specifies whether the properties of an object are initialized when the object loads.
Public enumeration 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.
Public enumeration Stapling Specifies whether, and where, a printer staples a multi-page document.
Public enumeration TrueTypeFontMode Specifies how a printer handles text that is formatted with a TrueType font.
© 2015 Microsoft