UIWebView: s viewPrintFormatter () возвращает ... ничего? - PullRequest
0 голосов
/ 08 апреля 2019

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() не дает мне ничего напечатать?

Любые предложения приветствуются.

...