The UIPrint​Interaction​Controller​Delegate protocol is implemented by the delegate of the UIPrint​Interaction​Controller shared instance to perform a number of optional tasks.


If the application has special requirements for content sizes, it can implement print​Interaction​Controller(_:​choose​Paper:​) to return a UIPrint​Paper object encapsulating the page size and the printing area to use for a print job. If you want more control of the presentation of the printing options, the delegate can return a view controller that owns the printing-options view in an implementation of print​Interaction​Controller​Parent​View​Controller(_:​). The delegate can also implement methods that are invoked when the printing user interface is presented and when it is dismissed, and when the print job begins and ends.


Returning a Parent View Controller

func print​Interaction​Controller​Parent​View​Controller(UIPrint​Interaction​Controller)

Returns a parent view controller for managing the printing-options view.

Choosing a Paper Size for the Print Job

func print​Interaction​Controller(UIPrint​Interaction​Controller, choose​Paper:​ [UIPrint​Paper])

Asks the delegate for an object encapsulating the paper size and printing area to use for the print job.

Responding to the Presentation and Dismissal of the Printing Interface

func print​Interaction​Controller​Will​Present​Printer​Options(UIPrint​Interaction​Controller)

Tells the delegate that the printing-options user interface is about to be displayed.

func print​Interaction​Controller​Did​Present​Printer​Options(UIPrint​Interaction​Controller)

Tells the delegate that the printing-options user interface has just been presented.

func print​Interaction​Controller​Will​Dismiss​Printer​Options(UIPrint​Interaction​Controller)

Tells the delegate that the printing-options user interface will be dismissed.

Responding to the Start and End of a Print Job



Constants for specifying the cutter behavior of a roll-fed printer.


Inherits From