Я пытаюсь распечатать вид из swiftui на принтер. Кажется, все работает нормально, за исключением случаев, когда появляется диалоговое окно печати, предварительный просмотр является пустым представлением. My PrintView имеет большой черный ящик с текстом внутри только для тестирования, но не будет отображаться при предварительном просмотре.
func fPrint() {
let printingView = UIHostingController(rootView: PrintView()).view
// GET VIEW AS NSDATA FOR PDF
let pdfData:NSMutableData = NSMutableData()
let pageSize:CGRect = CGRect()
UIGraphicsBeginPDFContextToData(pdfData, pageSize, nil)
let pdfContext:CGContext = UIGraphicsGetCurrentContext()!
// CREATE A SINGLE PAGE PDF
UIGraphicsBeginPDFPage()
printingView?.layer.render(in: pdfContext)
UIGraphicsEndPDFContext();
// SETUP PRINT INFO
let printInfo = UIPrintInfo(dictionary:nil)
printInfo.outputType = UIPrintInfo.OutputType.general
printInfo.jobName = "Print Job"
printInfo.orientation = .portrait
// SETUP PRINT CONTROLLER
let printController = UIPrintInteractionController.shared
printController.printInfo = printInfo
printController.showsNumberOfCopies = true
printController.showsPaperSelectionForLoadedPapers = true
printController.printingItem = pdfData
printController.present(animated: true, completionHandler: nil)
}