Code to handle printing is always relatively hard to write. Many factors are at play: pagination, margins, and page orientation (landscape versus portrait). This chapter is designed to get you started on your journey toward the perfect printout.
Compared to most operating systems, Mac OS X makes writing print routines considerably easier. After all, your views already know how to generate PDF, and Mac OS X knows how to print PDF. If you have a document-based application and a view that knows how to draw itself, you simply implement
printOperationWithSettings:error:. In this method, you create an
NSPrintOperation object, using a view, and return it. The code, in your
NSDocument subclass, would look like this:
- (NSPrintOperation ...