UIWebView:s viewPrintFormatter()返回……什么都没有?

问题描述 投票:1回答:1

TL; DR:为什么UIWebView:s viewPrintFormatter()没有给我打印的内容?


我目前正在尝试打印UIWebView的内容。我找到了一些示例,并最终获得了以下代码:

let printInteractionController: UIPrintInteractionController = UIPrintInteractionController.shared
let printInfo: UIPrintInfo = UIPrintInfo.printInfo()

printInfo.outputType = UIPrintInfo.OutputType.general
printInfo.jobName = self.webView.request!.url!.absoluteString
printInfo.orientation = UIPrintInfo.Orientation.portrait
printInfo.duplex = UIPrintInfo.Duplex.longEdge

printInteractionController.printInfo = printInfo
printInteractionController.printFormatter = self.webView.viewPrintFormatter()

printInteractionController.present(animated: true, completionHandler: nil)

此代码可以完美运行,并按预期方式启动打印控制器。页面预览完全空白(灰色):

UIPrintInteractionController with blank preview page

如果我dump(self.webView.viewPrintFormatter()或选中print(self.webView.viewPrintFormatter().numberOfPages),则似乎返回格式器为空。

UIWebView最肯定不是空的。

除了我对打印感兴趣的网页以外,我还尝试了多种不同的网页,在尝试过的每一页上都得到了相同的结果。

所以,为什么UIWebView:s viewPrintFormatter()没有给我打印的内容?

任何建议将不胜感激。

ios swift uiwebview uikit
1个回答
0
投票

尝试使用WKWebView,UIWebView也已弃用。

© www.soinside.com 2019 - 2024. All rights reserved.