Iphone 如何从应用程序文档目录打印.pdf文档

Iphone 如何从应用程序文档目录打印.pdf文档,iphone,ios5,uiprintinteractioncntrler,Iphone,Ios5,Uiprintinteractioncntrler,我正试图从我的应用程序文档目录中提取一个.pdf文件,并将其加载到图片中。PIC显示无错误,但预览中不显示数据。 我错过了什么?我只是采取了一种完全错误的方法吗 -(IBAction)actPrintPDF:(id)sender { NSString* fileName = @"Observation.PDF"; NSArray *arrayPaths = NSSearchPathForDirectoriesInDomains(

我正试图从我的应用程序文档目录中提取一个.pdf文件,并将其加载到图片中。PIC显示无错误,但预览中不显示数据。 我错过了什么?我只是采取了一种完全错误的方法吗

-(IBAction)actPrintPDF:(id)sender
{


NSString* fileName = @"Observation.PDF";

NSArray *arrayPaths =
NSSearchPathForDirectoriesInDomains(
                                    NSDocumentDirectory,
                                    NSUserDomainMask,
                                    YES);
NSString *path = [arrayPaths objectAtIndex:0];
NSString* pdfFileName = [path stringByAppendingPathComponent:fileName];

NSLog(@"Path = %@",path);
NSLog(@"pdfFileName = %@",pdfFileName);

NSData *myData = [NSData dataWithContentsOfFile:path];
UIPrintInteractionController *print = [UIPrintInteractionController sharedPrintController];

print.delegate = self;
UIPrintInfo *printInfo = [UIPrintInfo printInfo];
printInfo.outputType = UIPrintInfoOutputGeneral;
printInfo.jobName = [pdfFileName lastPathComponent];
printInfo.duplex = UIPrintInfoDuplexLongEdge;
print.printInfo = printInfo;
print.showsPageRange = YES;
print.printingItem = myData;
UIViewPrintFormatter *viewFormatter = [self.view viewPrintFormatter];
viewFormatter.startPage = 0;
print.printFormatter = viewFormatter;


UIPrintInteractionCompletionHandler completionHandler = ^(UIPrintInteractionController *printInteractionController, BOOL completed, NSError *error) {};

[print presentAnimated:YES completionHandler:completionHandler];

}
日志显示: ***2015-11-08 08:56:30.462 ShortShooter4[16153:7505181]Path=/Users/myUserName/Library/Developer/CoreSimulator/Devices/02F8C004-6BA3-4F7B-9FC4-743DA205D7DD/data/Containers/data/Application/796A70BC-4159-4B18-825E-B35043BC5704/Documents

2015-11-08 08:56:30.462 ShortShooter4[16153:7505181]pdfFileName=/Users/muUserName/Library/Developer/CoreSimulator/Devices/02F8C004-6BA3-4F7B-9FC4-743DA205D7DD/data/Containers/data/Application/796A70BC-4159-4B18-825E-B35043BC5704/Documents/Observation.PDF 2015-11-08 08:56:31.080 ShortShooter4[16153:7505181]开始/结束外观转换的不平衡呼叫***


所以我可以看到文件在那里。我也有不平衡呼叫的问题,但我将分别对此进行攻击。

通过删除以下内容解决问题:

UIViewPrintFormatter *viewFormatter = [self.view viewPrintFormatter];
viewFormatter.startPage = 0;
print.printFormatter = viewFormatter;
希望这对其他人有帮助