您不必事先创建视图,您可以在需要时创建它。
如果要转储到打印机,然后在基于文档的应用程序和考虑到我们MyDocument
(或者无论你怎么称呼它)扩展NSDocument
你会实现:
- (NSPrintOperation *)printOperationWithSettings:(NSDictionary *)ps
error:(NSError **)e
的观点则使用标准drawRect:
进行绘制。
例如,这里PeopleView
只是吸引人们细节table
,它需要的人employees
这里NSDictonary
:
- (NSPrintOperation *)printOperationWithSettings:(NSDictionary *)ps
error:(NSError **)e
{
PeopleView * view = [[PeopleView alloc] initWithPeople:employees];
NSPrintInfo * printInfo = [self printInfo];
NSPrintOperation * printOp
= [NSPrintOperation printOperationWithView:view
printInfo:printInfo];
[view release];
return printOp;
}
你可以寻找更多的细节在第27章,印刷,Hillegass'可可编程对于Mac OS X的
你不需要设置视图的框架吗?或者印刷公司为你做这件事? –
不,如果你有可以自己绘制的视图,这就是你所要做的。我创建了这个例子,它工作。我以不同的方式使用数据,当我想要打印它们时,我使用'PeopleView'。 – stefanB