我正在使用此代码将我的PDF加载到webView:
NSURL *targetURL = [NSURL URLWithString:@"http://example.com/demo.pdf"];
NSURLRequest *requestObj = [NSURLRequest requestWithURL:targetURL];
[viewWeb loadRequest:requestObj];
一切正常,但要解决一个问题。
我的 demo.pdf 受密码保护,当然我知道这个密码但不想在每次加载pdf时输入它。
我可以将密码设置为变量/字符串并加载 PDF 而不输入密码吗?
答案 0 :(得分:0)
我认为没有什么比直接告诉webview密码是什么,而是我会手动下载PDF文件(NSURLConnection或其他东西),然后使用CGPDFDocumentUnlockWithPassword(doc,pass)解锁它。
然后,您可以在内存中生成一个解锁版本作为NSData并将其加载到Web视图中(此时不受密码保护)
您可以使用以下内容将其绘制到NSData中(跳过有关自定义绘制顶部红色框的部分): http://b2cloud.com.au/how-to-guides/drawing-over-a-pdf-in-ios-pdf-template
当然,如果你的PDF很庞大或有大量图片,这可能需要一些时间......
CGPDFDocument参考: https://developer.apple.com/library/ios/documentation/graphicsimaging/reference/CGPDFDocument/Reference/reference.html