<!--
{
  "documentType" : "article",
  "framework" : "AppKit",
  "identifier" : "/documentation/AppKit/printing",
  "metadataVersion" : "0.1.0",
  "role" : "collectionGroup",
  "title" : "Printing"
}
-->

# Printing

Display the system print panels and manage the printing process.

## Discussion

For design guidance, see [Human Interface Guidelines](https://developer.apple.com/design/human-interface-guidelines/macos/system-capabilities/printing/).

## Topics

### Print Panels

[`NSPrintPanel`](/documentation/AppKit/NSPrintPanel)

The Print panel that queries the user for information about a print job.

[`NSPageLayout`](/documentation/AppKit/NSPageLayout)

A panel that queries the user for information such as paper type and orientation.

### Print Information

[`NSPrinter`](/documentation/AppKit/NSPrinter)

An object that describes a printer’s capabilities.

[`NSPrintInfo`](/documentation/AppKit/NSPrintInfo)

An object that stores information that’s used to generate printed output.

[`NSPrintOperation`](/documentation/AppKit/NSPrintOperation)

An object that controls operations that generate Encapsulated PostScript (EPS) code, Portable Document Format (PDF) code, or print jobs.



---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)