我们正在尝试修改NSPrintPanel的默认选定纸张大小。使用NSNotification,我们能够在accessoryViews上观察和实现NSPrintPanel中的更改。但是,当我们尝试实现setPaperSize (NSPrintInfo实例方法)时,什么都不会发生,并且为所有其他打印机(我们有常规打印机和收据打印机)选择了默认打印机的初始纸张大小(默认)。
我知道当打印机改变时,正在设置的新纸张大小是正确的。我们正在以编程的方式从核心打印获得纸张大小。在尝试设置正确/所需的paperSize时,应用程序不会中断或返回任何堆栈。因此,苹果似乎不支持改变纸张大小的PrintPanel。
在研究这个问题时,我们注意到来自苹果的名为“纸张处理”的NSPrintPanel附件视图似乎响应了打印机的更改,这是基于您提供给页面设置的设置(在文件菜单,NSPageLayout中)。所以我们的问题是:
注意: Mac似乎不允许/提供一种用户友好的方式来为每台已安装的打印机设置默认纸张大小。
我们正在谈论的附件视图:

我们已经审查了苹果的文件(当然),并从其他人张贴类似的问题,但没有任何效果。我们非常希望能朝正确的方向努力。提前谢谢。
发布于 2014-01-31 00:42:09
我已经有一段时间没有这样做了,但是当你在NSPrintPanel的printInfo上设置它时会发生什么呢?好点了吗?它可能会制作自己的临时副本。
https://stackoverflow.com/questions/21443048
复制相似问题