我可以让JavaScript选择要使用的打印机吗

Can I have JavaScript select printer to use?

本文关键字:打印机 JavaScript 选择 我可以      更新时间:2023-09-26

可能重复:
从web应用打印到特定打印机

我们的一个intranet应用程序需要打印到非默认打印机。当然,人们经常忘记选择正确的打印机。

我知道你通常不能通过JavaScript来做到这一点,但考虑到浏览器是IE9,我可以将网络应用程序添加到可信区域(并随意篡改安全设置(,有没有任何方法可以编写JavaScript来自动选择正确的打印机?也许使用一些ActiveX或其他特定于IE的东西。

否,Javascript对象模型包括一个window.print((方法,该方法可能会激活Web浏览器的标准打印对话框,但仅限于功能扩展。Javascript代码检查连接到计算机的打印机、查找打印机属性或任意配置打印机设置是不合适或不安全的。

我建议在打印之前添加一个弹出窗口,提醒用户选择合适的打印机。

如果你的浏览器是基于IE的,你可以使用meadroid:中的这个activeX

http://www.meadroid.com/scriptx/index.asp

我过去使用过它,它允许控制打印机属性。

以下是来自mmeadroid文档的一个示例:

<script>
function printWindow() {
  factory.printing.SetMarginMeasure(2); // set inches
  factory.printing.header = "This is MeadCo";
  factory.printing.footer = "Printing by ScriptX";
  factory.printing.portrait = false;
  factory.printing.leftMargin = 1.0;
  factory.printing.topMargin = 1.0;
  factory.printing.rightMargin = 1.0;
  factory.printing.bottomMargin = 1.0;
  factory.printing.copies = 1;
  factory.printing.printBackground = true;
  factory.printing.Print(false);
  factory.printing.WaitForSpoolingComplete();
  // navigate or close browser here //
}
</script>