Swift 创建不可见视图控制器的pdf

Swift 创建不可见视图控制器的pdf,swift,macos,cocoa,pdf,Swift,Macos,Cocoa,Pdf,我有一个带有按钮的视图控制器。这个按钮显示了视图控制器。第二个视图控制器有内容和按钮 如果按下按钮,以下代码将创建ViewController内容的pdf文件: let pdfData = contentVC_B.dataWithPDF(inside: contentVC_B.frame) let fileURL = try! FileManager.default.url(for: .documentDirectory, in: .userDomainMask, appropriateFor:

我有一个带有按钮的视图控制器。这个按钮显示了视图控制器。第二个视图控制器有内容和按钮

如果按下按钮,以下代码将创建ViewController内容的pdf文件:

let pdfData = contentVC_B.dataWithPDF(inside: contentVC_B.frame)
let fileURL = try! FileManager.default.url(for: .documentDirectory, in: .userDomainMask, appropriateFor: nil, create: false).appendingPathComponent("test.pdf")

do {
   try pdfData.write(to: fileURL, options: .atomic)
} catch {
   print(error)
}
这个很好用。 但现在我的问题是:

我想使用按钮a(来自ViewController_a)创建ViewController_B内容的pdf文件,而不显示ViewController_B


有可能吗?如果是,我如何实现它?

获取ViewController\u B,获取contentVC\u B并获取pdf数据

let storyBoard = NSStoryboard(name:"Main", bundle:nil)
let viewController_B = storyBoard.instantiateController(withIdentifier:"viewController_B") as! NSViewController
let contentVC_B = viewController_B.view
let pdfData = contentVC_B.dataWithPDF(inside: contentVC_B.frame)

因此,如果我理解正确,您希望使用A上的按钮将
VC_B
传递到
VC_A
?然后,您应该能够创建包含内容的文件。我从来没有试过这个,所以我不确定它是否有效。请看这个答案,以获得在VC之间传递数据的帮助。我相信这正是你要问的。也许是这样?