有没有办法在打印之前保存当前打印机并在调用“this.print”后恢复它?
我们的网络应用程序打印了许多报告。大多数报告都生成并显示在当前正在查看的网页上的 iframe 中。然后,用户可以通过与 Adobe 的菜单交互进行打印。
我们的少数报告需要自动打印到特定的打印机。在生成这些报告时,我们将以下 JavaScript 添加到 PDF。然后将 PDF 加载到隐藏的 iframe 中并打印。
var params = this.getPrintParams();
params.interactive=params.constants.interactionLevel.silent;
params.pageHandling=params.constants.handling.none;
params.printerName="LabelPrinter"
this.print(params);
这很好用,文件打印到正确的打印机。
打印下一份报告时出现问题。当用户单击 Adobe 的打印按钮时,选定的打印机将是调用“this.print”时设置的打印机。有时用户不会看到选择了错误的打印机,并定期将报告打印到标签打印机。
我想做类似以下的事情......
var params = this.getPrintParams();
var currentPrinter = params.printerName;
params.interactive=params.constants.interactionLevel.silent;
params.pageHandling=params.constants.handling.none;
params.printerName="LabelPrinter"
this.print(params);
//set it back here by calling something like
this.SetCurrentPrinter(currentPrinter);
感谢您的帮助迈克