在我的iOS应用程序中,我需要从我的webview内容创建一个pdf文档.我看过这些帖子:
Creating PDF file from UIWebView和
https://coderchrismills.wordpress.com/2011/06/25/making-a-pdf-from-a-uiwebview/
我想知道是否有更简单的方法.例如,对于我的Mac项目,我使用:
NSData *pdf = [[[[webView mainFrame] frameView] documentView] dataWithPDFInsideRect:[[[webView mainFrame] frameView] documentView].frame]; PDFDocument *doc = [[PDFDocument alloc] initWithData:pdf];
在iOS中有没有简单的方法可以做到这一点?
解决方法
没有一种方法可以像在Mac上那样直接通过SDK进行此操作,但是您可能希望查看
BNHtmlPdfKit,它允许您将URL,Web视图以及html字符串的内容保存为PDF.
例如,如下:
self.htmlPdfKit = [BNHtmlPdfKit saveUrlAsPdf:[NSURL URLWithString:@"http://itsbrent.net"] toFile:@"...itsbrent.pdf" pageSize:BNPageSizeA6 success:^(NSString *pdfFileName) { NSLog(@"Done"); } failure:^(NSError *err) { NSLog(@"Failure"); }];
它使用自定义UIPrintPageRenderer,它覆盖paperRect和printableRect,从而导致UIPrintFormatter返回pageCount以及呈现文档.