Code to handle printing is always relatively hard to write. Many factors are at play: pagination, margins, and page orientation, or landscape versus portrait.
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 *)printOperationWithSettings:(NSDictionary *)ps
NSPrintInfo *printInfo = [self printInfo];
= [NSPrintOperation printOperationWithView:aView
Be the first one to add a comment