2011-06-24 16 views
2

我試圖從一個的WebView得到PDFDocument但我只拿到了頁面的一部分:-(的WebView到PDFDocument

我使用的代碼是這樣的:

//Generate a PDF document from the HTML. 
NSData *pdfData = [webView dataWithPDFInsideRect:[webView frame]]; 
PDFDocument *document = [[PDFDocument alloc] initWithData:pdfData]; 

[document writeToURL:[NSURL URLWithString:@"file:///Users/tmp/test.pdf"]]; 

任何想法如何使它更好呢?

回答

3
  1. 獲取Web視圖的主框架。
  2. 獲取主框架的框架圖。
  3. 獲取馬在框架視圖的文檔視圖中。
  4. 從中獲取PDF數據,傳遞rect的文檔視圖的邊界(不是幀)。
+0

非常感謝! –

4
NSData *pdfData = [[[[webview mainFrame] frameView] documentView] dataWithPDFInsideRect:[[[webview mainFrame] frameView] documentView].frame]; 
PDFDocument *document = [[PDFDocument alloc] initWithData:pdfData]; 
[document writeToFile:@"/Users/PalmAgent/Desktop/test.pdf"]; 
+0

經過測試。作品。謝謝! – Holtwick

+0

它創建一個頁面pdf.how獲取multipage pdf? – jasonhao

+0

它也可以用於多頁PDF。你確定你已經添加了上面的代碼嗎?特別是'documentView'? –