---
title: UIPrinter
framework: uikit
role: symbol
role_heading: Class
path: uikit/uiprinter
---

# UIPrinter

A printer on the network.

## Declaration

```swift
@MainActor class UIPrinter
```

## Overview

Overview You use a printer object to obtain information about a printer so that you can display that information in your app’s interface. You do not use printer objects to communicate with the printer directly. Most of the time, you use a UIPrinterPickerController object to retrieve a printer object representing the printer selected by the user. If you already have a URL containing the address of a printer—perhaps one that was previously selected by the user—you can use that URL to create a printer object directly. When creating your own printer objects, you must connect to the printer using the contactPrinter(_:) method before retrieving any of the printer’s attributes.

## Topics

### Creating a printer object

- [init(url:)](uikit/uiprinter/init(url:)-1mibn.md)

### Getting the printer’s address

- [url](uikit/uiprinter/url.md)

### Getting the printer information

- [displayName](uikit/uiprinter/displayname.md)
- [displayLocation](uikit/uiprinter/displaylocation.md)
- [makeAndModel](uikit/uiprinter/makeandmodel.md)
- [supportedJobTypes](uikit/uiprinter/supportedjobtypes.md)
- [UIPrinter.JobTypes](uikit/uiprinter/jobtypes.md)
- [supportsColor](uikit/uiprinter/supportscolor.md)
- [supportsDuplex](uikit/uiprinter/supportsduplex.md)

### Connecting to the printer

- [contactPrinter(_:)](uikit/uiprinter/contactprinter(_:).md)

### Constants

- [UIPrinter.CutterBehavior](uikit/uiprinter/cutterbehavior.md)

### Initializers

- [init(URL:)](uikit/uiprinter/init(url:)-80zxj.md)

## Relationships

### Inherits From

- [NSObject](objectivec/nsobject-swift.class.md)

### Conforms To

- [CVarArg](swift/cvararg.md)
- [CustomDebugStringConvertible](swift/customdebugstringconvertible.md)
- [CustomStringConvertible](swift/customstringconvertible.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [NSObjectProtocol](objectivec/nsobjectprotocol.md)
- [Sendable](swift/sendable.md)

## See Also

### Job info

- [UIPrintInfo](uikit/uiprintinfo.md)
- [UIPrintPaper](uikit/uiprintpaper.md)
