像 Chrome 在信息亭模式下运行时一样,Google Chrome 应用程序打印静默可能吗?
--kiosk --kiosk-priting
像 Chrome 在信息亭模式下运行时一样,Google Chrome 应用程序打印静默可能吗?
--kiosk --kiosk-priting
当您在 kiosk 模式下打印内容时,内容会自动打印到默认打印机,静默。只需print()
在要打印的页面的上下文中调用。如果要从背景/事件页面打印,则需要执行以下操作:
// ...
function closePrint () {
document.body.removeChild(this.__container__);
}
function setPrint () {
this.contentWindow.__container__ = this;
this.contentWindow.onbeforeunload = closePrint;
this.contentWindow.onafterprint = closePrint;
this.contentWindow.print();
}
function printPage (sURL) {
var oHiddFrame = document.createElement("iframe");
oHiddFrame.onload = setPrint;
oHiddFrame.style.visibility = "hidden";
oHiddFrame.style.position = "fixed";
oHiddFrame.style.right = "0";
oHiddFrame.style.bottom = "0";
oHiddFrame.src = sURL;
document.body.appendChild(oHiddFrame);
}
//...
只需调用printPage
,传递一个 URL 来打印一些东西。
来自MDN的代码
我为这个主题找到了一个临时的(也许不是临时的:))解决方案:
Chrome 应用解决方案
将您的应用安装到 chrome
创建从此应用程序到桌面的快捷方式。
右键单击 > 属性 > 编辑目标文本框,如下所示(您将添加“--kiosk-printing”参数)
编辑前:"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --profile-directory="Profile 2" --app-id=eoaefbbbpgcbhgeilphgobiicboopknp
编辑后: "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --kiosk-printing --profile-directory="Profile 2" --app-id=eoaefbbbpgcbhgeilphgobiicboopknp
尝试打印
如果要删除默认页眉和页脚(页面地址和日期):打开普通 chrome 打印内容 > 在打印机预览中 > 更多设置 > 取消选中“页眉和页脚”。Chrome 会一直记住这个设置。
(实际上chrome也必须在manifest.json上提供这个属性,但我还找不到)
我有设置:
"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --kiosk-printing --profile-directory="Profile 1"
使用 jquery 库进行网站测试 https://printjs.crabbly.com/ Chrome 弹出式打印机自动关闭且不打印出来..