首页 > 解决方案 > 在 MacOS App 中加载后如何打印 WebView

问题描述

我正在尝试从 Mac OS 应用程序的打印面板中打印 WebView。如何在打印面板中显示 WebView 内容。

这是用于打印 WebView,我尝试在加载到 WebView 后在打印面板中打印“ https://www.google.com ”,并且在打印中似乎总是空白页。

var wbView: WKWebView!
let preferences = WKPreferences()
let configuration = WKWebViewConfiguration()

override func viewDidLoad() {
    super.viewDidLoad()

    preferences.javaScriptEnabled = true
    preferences.javaScriptCanOpenWindowsAutomatically = true

    configuration.preferences = preferences

    wbView = WKWebView(frame: view.bounds, configuration: configuration)
    self.view.addSubview(wbView)
    wbView.navigationDelegate = self
    wbView.load(URLRequest(url: URL(string: "https://www.google.com")!))

}

func webView(_ webView: WKWebView, didFinish navigation: WKNavigation!){

       wbView.printView(self)
//     let printOperation = NSPrintOperation(view:  wbView)
//     printOperation.run()

    }

}

我尝试了两种打印方式: 1. wbView.printView() 2. let printOperation = NSPrintOperation(view: badgeView) printOperation.run()

但它在这两种情况下都不起作用。

请为此提出任何解决方案,谢谢。

标签: swiftmacos

解决方案


推荐阅读