我想弄清楚如何將WebView保存爲PDF並完全卡住,是否真的會感謝一些幫助?將WebView保存爲PDF將返回空白圖像?
我在可可&斯威夫特在OSX這樣做,這是我到目前爲止的代碼:
import Cocoa
import WebKit
class ViewController: NSViewController {
override func loadView() {
super.loadView()
}
override func viewDidLoad() {
super.viewDidLoad()
loadHTMLString()
}
func loadHTMLString() {
let webView = WKWebView(frame: self.view.frame)
webView.loadHTMLString("<html><body><p>Hello, World!</p></body></html>", baseURL: nil)
self.view.addSubview(webView)
createPDFFromView(webView, saveToDocumentWithFileName: "test.pdf")
}
func createPDFFromView(view: NSView, saveToDocumentWithFileName fileName: String) {
let pdfData = view.dataWithPDFInsideRect(view.bounds)
if let documentDirectories = NSSearchPathForDirectoriesInDomains(.DocumentDirectory, .UserDomainMask, true).first {
let documentsFileName = documentDirectories + "/" + fileName
debugPrint(documentsFileName)
pdfData.writeToFile(documentsFileName, atomically: false)
}
}
}
這很簡單,我在做什麼是創建一個web視圖,寫一些基本的HTML內容,它這使得這樣的:
然後採取的觀點,並將其保存爲PDF文件,但散發出來的空白:
我試過抓取webView和視圖的內容,但沒有喜悅。
我在這裏發現了一個類似的問題How to take a screenshot when a webview finished rending關於將webview保存爲圖片,但到目前爲止沒有運氣與OSX解決方案。
難道這與文檔尺寸有關嗎? 或內容在子視圖中? 也許如果你捕捉視圖,你不能捕獲子視圖?
任何想法?
你好。如果您發現問題的解決方案,*將其作爲答案*發佈,請勿將其添加到您的問題中。也請不要將「解決」添加到標題中。發佈答案並將其標記爲已接受是「解決」問題的方式。謝謝。 – Moritz
對不起,會做。 –
沒問題 - 我已經恢復了你的編輯,你現在只需要發佈你的答案。謝謝! :) – Moritz