Code to handle printing is always relatively hard to write. Many factors are at play: pagination, margins, and page orientation, or 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 ...