【发布时间】:2016-09-21 20:45:15
【问题描述】:
我通过在 mainController 中为该 NSView 的按钮分配以下操作,为 NSPopover 的自定义 NSView 制作了打印功能:
@IBOutlet var plasmidMapIBOutlet: PlasmidMapView!
@IBAction func actionPrintfMap(sender: AnyObject)
{
plasmidMapIBOutlet.print(sender)
}
它可以工作,但是打印窗口没有Paper Size和Orientation选项,请看下面的截图。
- 我应该怎么做才能在打印窗口中获得这些选项?
- 还有,如何使 NSView 适合可打印区域?现在不合适了。
我已经想到了一些时刻,但并不完全。所以,我可以通过以下代码设置打印
@IBAction func actionPrintMap(sender: AnyObject)
{
let printInfo = NSPrintInfo.sharedPrintInfo()
let operation: NSPrintOperation = NSPrintOperation(view: plasmidMapIBOutlet, printInfo: printInfo)
operation.printPanel.options = NSPrintPanelOptions.ShowsPaperSize
operation.printPanel.options = NSPrintPanelOptions.ShowsOrientation
operation.runOperation()
//plasmidMapIBOutlet.print(sender)
}
但是,我还是有问题。从上面的代码中,我可以获得only 方向(最后一个,ShowsOrientation),但不能同时获得 PaperSize 和 Orientation。如何同时管理 ShowsPaperSize 和 ShowsOrientation?
【问题讨论】:
-
@Willeke 是的,我已经更新了问题。现在我可以拥有一个,但不能同时拥有 ShowsPaperSize 和 ShowsOrientation 选项。我怎样才能两者兼得?