2015-05-26 58 views
7

在我的iOS应用程序中,我需要从我的webview内容创建一个pdf文档。我看过这些帖子:Creating PDF file from UIWebViewhttps://coderchrismills.wordpress.com/2011/06/25/making-a-pdf-from-a-uiwebview/iOS从UIWebview内容创建pdf

我不知道是否有一个更简单的方法来做到这一点。例如对于我的Mac项目,我使用这个:

NSData *pdf = [[[[webView mainFrame] frameView] documentView] dataWithPDFInsideRect:[[[webView mainFrame] frameView] documentView].frame]; 
PDFDocument *doc = [[PDFDocument alloc] initWithData:pdf]; 

有什么简单的方法可以做到这一点在iOS?

哪一个是最好的选择,从webview内容获得最好的质量PDF文档?

+0

引用此问题:http://stackoverflow.com/questions/15813005/creating-pdf-file-from-uiwebview – Bhushan

回答

4

有没有一种方法可以直接通过SDK,就像在Mac上一样,但是您可能希望看一下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它覆盖paperRectprintableRect从而使UIPrintFormatter返回一个PAGECOUNT以及呈现文档的。