Click to Rate and Give Feedback
MSDN
MSDN Library
.NET Development
.NET Framework 3.5

  Switch on low bandwidth view
This page is specific to
Microsoft Visual Studio 2008/.NET Framework 3.5

Other versions are also available for the following:
.NET Framework Class Library
System.Drawing.Printing Namespace

The System.Drawing.Printing namespace provides print-related services for Windows Forms applications.

Typically, when you print from a Windows Forms application, you create a new instance of the PrintDocument class, set properties, such as DefaultPageSettings and PrinterSettings, that describe how to print, and call the Print method to actually print the document. Calling the PrintDocument..::.Print method raises the PrintDocument..::.PrintPage event, which should be handled to perform the document layout for printing.

Use the Graphics property of the PrintPageEventArgs object obtained from the PrintDocument..::.PrintPage event to specify the output to print. If you are printing a text file, use StreamReader to read one line at a time from the stream and call the DrawString method to draw the line in the graphics object. For more information about this process, see the Graphics and StreamReader classes. You can view an example of printing a text document in the PrintDocument class overview topic.

NoteNote:

The DrawText methods of the TextRenderer class are not supported for printing. Instead, use the DrawString methods of the Graphics class.

When implemented in a derived class, the PrintController controls how a PrintDocument is printed. The PrintDocument..::.Print method invokes the print controller's OnStartPrint, OnEndPrint, OnStartPage, and OnEndPage methods, which in turn tell the printer how to print the document. For more information about printing dialog boxes, see PrintDialog and PageSetupDialog.

The print-preview process uses a specialized print controller, dialog box, and control. For an example of such a print controller and dialog box, see PreviewPrintController, PrintPreviewDialog, and PrintPreviewControl.

Caution noteCaution:

Classes within the System.Drawing.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.

If you want to print from a Windows Presentation Foundation (WPF) application, see the System.Printing namespace.

  ClassDescription
Public classInvalidPrinterException Represents the exception that is thrown when you try to access a printer using printer settings that are not valid.
Public classMargins Specifies the dimensions of the margins of a printed page.
Public classMarginsConverter Provides a MarginsConverter for Margins.
Public classPageSettings Specifies settings that apply to a single, printed page.
Public classPaperSize Specifies the size of a piece of paper.
Public classPaperSource Specifies the paper tray from which the printer gets paper.
Public classPreviewPageInfo Specifies print preview information for a single page. This class cannot be inherited.
Public classPreviewPrintController Specifies a print controller that displays a document on a screen as a series of images.
Public classPrintController Controls how a document is printed, when printing from a Windows Forms application.
Public classPrintDocument Defines a reusable object that sends output to a printer, when printing from a Windows Forms application.
Public classPrinterResolution Represents the resolution supported by a printer.
Public classPrinterSettings Specifies information about how a document is printed, including the printer that prints it, when printing from a Windows Forms application.
Public classPrinterSettings..::.PaperSizeCollection Contains a collection of PaperSize objects.
Public classPrinterSettings..::.PaperSourceCollection Contains a collection of PaperSource objects.
Public classPrinterSettings..::.PrinterResolutionCollection Contains a collection of PrinterResolution objects.
Public classPrinterSettings..::.StringCollectionInfrastructure. Contains a collection of String objects.
Public classPrinterUnitConvert Specifies a series of conversion methods that are useful when interoperating with the Win32 printing API. This class cannot be inherited.
Public classPrintEventArgs Provides data for the BeginPrint and EndPrint events.
Public classPrintingPermission Controls access to printers. This class cannot be inherited.
Public classPrintingPermissionAttribute Allows declarative printing permission checks.
Public classPrintPageEventArgs Provides data for the PrintPage event.
Public classQueryPageSettingsEventArgs Provides data for the QueryPageSettings event.
Public classStandardPrintController Specifies a print controller that sends information to a printer.
  DelegateDescription
Public delegatePrintEventHandler Represents the method that will handle the BeginPrint or EndPrint event of a PrintDocument.
Public delegatePrintPageEventHandler Represents the method that will handle the PrintPage event of a PrintDocument.
Public delegateQueryPageSettingsEventHandler Represents the method that handles the QueryPageSettings event of a PrintDocument.
  EnumerationDescription
Public enumerationDuplex Specifies the printer's duplex setting.
Public enumerationPaperKind Specifies the standard paper sizes.
Public enumerationPaperSourceKind Standard paper sources.
Public enumerationPrintAction Specifies the type of print operation occurring.
Public enumerationPrinterResolutionKind Specifies a printer resolution.
Public enumerationPrinterUnit Specifies several of the units of measure used for printing.
Public enumerationPrintingPermissionLevel Specifies the type of printing that code is allowed to do.
Public enumerationPrintRange Specifies the part of the document to print.

Reference

Other Resources

Community Content   What is Community Content?
Add new content RSS  Annotations
Processing
© 2009 Microsoft Corporation. All rights reserved. Terms of Use  |  Trademarks  |  Privacy Statement
Page view tracker