从浏览器静音打印

我在过去的几天里研究了很多,并在这个问题上给了我足够的支持。 我想要实现的是使用打印按钮直接从网页打印。 我不想浏览器打印弹出窗口出现。 将有2台打印机连接到我的Web应用程序,我想自动选择打印机。

我知道使用PHP或没有任何浏览器扩展或活动x插件是不可能的。

我还想到了一个解决方案,用于在用户系统上安装Java套接字客户端应用程序时使用Web套接字发送打印请求。

请建议我任何时候保存解决我的问题的方法

我已经看过镀铬扩展,火狐狸插件
– Faizan Afzal 3月28日15:54

在上面的评论中,您提到您已经查看了Chrome扩展程序和FireFox插件,但是这些浏览器中已经内置了禁用打印对话框的function。
如果您正在制作的Web应用程序将在受控环境中运行(您管理哪些浏览器访问它以及如何配置它们),您可以相当轻松地执行此操作。


首先,转到chrome://settings/并将主页更改为Web应用程序。 接下来,在桌面上为Chrome浏览器创建快捷方式,然后右键单击它以打开属性窗口。 在“目标”输入字段中,将--kiosk --kiosk-printing添加到该位置的末尾。 应用更改,关闭所有Chrome窗口,然后单击快捷方式。 这应该让你进入全屏(自助服务终端模式),当你尝试打印时,它应该自动打印在默认打印机上,而不显示弹出窗口。

火狐
在FireFox上,转到about:config并同意任何警告消息。 然后,右键单击页面上的某个位置并创建“ New -> Boolean ”。 它会提示您输入名称和州。 对于名称,输入print.always_print_silent ,对于状态,将其设置为true。 然后,您需要保存更改并重新启动已打开的所有FireFox窗口。 如果您尝试打印某些内容,则不再需要显示弹出窗口,并且将自动在默认打印机上打印。

使用这种方式配置这些浏览器中的任何一个,您都可以使用标准的window.print(); 无需任何服务器端交互即可打印的JavaScript方法。

批处理文件?
如果您想要一种更简单的方法来执行这些操作,可以使用这两个命令提示符脚本,它们将自动配置和/或运行它们以满足您的需求:

铬:

 cd Program Files (x86)\Google\Chrome\Application chrome.exe --kiosk --kiosk-printing 

火狐:

 FOR /D %%G in ("%APPDATA%\Mozilla\Firefox\Profiles\*.default") DO SET prof=%%G cd %prof% echo user_pref("print.always_print_silent", true);>>prefs.js cd \.. cd Program Files (x86)\Mozilla Firefox firefox.exe