要求
内联网 Web 应用需要每天打印大量收据。Chrome 或 Firefox 中的静默打印工作正常---认为这部分已解决。
美中不足
因此,我们在chrome或Firefox中使用命令行选项来实现快速静音打印,但这些是常规工作站,而不是POS。他们有常规的网络打印机,除了收据打印之外的所有内容。
在许多配置中,Firefox 和 Chrome 将使用"上次使用的打印机",但这不可靠,并且在某些配置中不起作用......例如,Linux。Firefox 也不支持更改打印命令,甚至也不指定print_printer。
问题
是否可以在命令行上指定打印机:
例如,
firefox -no-remote -P webapp --print-target receipt
或-
chrome --kiosk --kiosk-printing receipt
是否有插件,扩展程序或应用程序会强制FF或Chrome忽略某个配置文件(或站点)的系统默认打印机并使用指定的打印机?
有没有一个油脂猴脚本来做到这一点?
我们不能依靠火狐或铬来使用"上次使用的打印机"......有时他们会这样做,有时不会。有没有人想出一个黑客外壳脚本来做到这一点......正如你所看到的,我处于智慧的尽头和绝望。我们会为此付出代价[更新:此时你来不及$$,我打败了你]。
您可以使用 FF https://github.com/edabg/jsprintsetup 扩展。
选项包括:setSilentPrint,setPrintersList - 返回可用打印机的逗号分隔列表,setPrinter - 设置当前打印机,getPrinter - 返回当前选定的打印机等。
我回答了这个问题,解决了这里的问题:
https://superuser.com/questions/406857/debian-firefox-or-iceweasel-default-printer-for-pos-station-web-application
使用了一个单独的帐户,一些sudo魔法和一个共享文件夹。
提交的两个问题是看待问题的不同方式 - 但通过"必须使用浏览器功能"的镜头 - 对可能的解决方案的假设略有不同。换句话说,不完全重复。
一个是:我可以指定应用程序级别的打印机默认值吗?
另一个是:我可以通过 cli 选项告诉浏览器实例使用特定的打印机吗?
对两者都是,答案要么是否定的,要么笼罩在SEO污染的谷歌结果中。