【发布时间】:2016-10-17 00:35:30
【问题描述】:
我有一个GitHub repository,它允许用户通过将其加载到 WebView 并使用NSPrintOperation(特别是NSPrintSaveJob 并将showsPrintPanel 设置为false)从某些HTML 在Mac 上保存分页PDF允许用户使用类似于默认的NSSavePanel 的save panel 将该PDF 保存到他们Mac 上的任何位置。但是,我正在试验代码,我想在没有保存面板的情况下将创建的 PDF 保存到特定文件夹 (/Users/owlswipe/Downloads/)。
我从 WebView(带有保存面板)保存 PDF 的代码目前是这样的:
let printOpts: [String : AnyObject] = [NSPrintJobDisposition:NSPrintSaveJob as AnyObject]
let printInfo: NSPrintInfo = NSPrintInfo(dictionary: printOpts)
printInfo.paperSize = NSMakeSize(595.22, 841.85)
let printOp: NSPrintOperation = NSPrintOperation(view: webView.mainFrame.frameView.documentView, printInfo: printInfo)
printOp.showsPrintPanel = false
printOp.showsProgressPanel = false
printOp.run()
如何调整该代码以将 PDF 保存到预设文件夹,而不是保存到用户从保存面板中选择的文件夹?
【问题讨论】:
-
NSPrintOperation也有一个类方法func pdfOperation(with: NSView, inside: NSRect, toPath: String, printInfo: NSPrintInfo)。
标签: swift macos cocoa pdf-generation swift3