我有一个从服务器下载的 PDF 文件,有时用户上传了损坏的 PDF,我需要检查我的应用程序是否可以打开这样的文件。
那么有没有一种内置的方法可以用来检查 PDF 损坏?如果没有,我可以使用免费的轻量级 PDF 框架来查看或检查损坏情况吗?
注意:目前我在 UIWebView 上打开 PDF 文件。
我有一个从服务器下载的 PDF 文件,有时用户上传了损坏的 PDF,我需要检查我的应用程序是否可以打开这样的文件。
那么有没有一种内置的方法可以用来检查 PDF 损坏?如果没有,我可以使用免费的轻量级 PDF 框架来查看或检查损坏情况吗?
注意:目前我在 UIWebView 上打开 PDF 文件。
我找到了使用 CoreGraphics PDF 绘图 API 的解决方案。感谢您的回答。
NSString *path = [[NSBundle mainBundle] pathForResource:@"A_Corrupted_PDF" ofType:@"pdf"];
NSData *data = [[NSFileManager defaultManager] contentsAtPath:path];
CGDataProviderRef provider = CGDataProviderCreateWithCFData((__bridge CFDataRef)data);
CGPDFDocumentRef document = CGPDFDocumentCreateWithProvider(provider);
if (document == nil) {
NSLog(@"The PDF is corrupted");
}
CGDataProviderRelease(provider);
CGPDFDocumentRelease(document);