printing - Javascript - 如何判断 window.print() 是否成功?

标签 printing javascript

我有一个页面,用户可以在其中打印一些带有图像和数据的 pdf。 我希望他们能够打印他们想要的文件数量,并且能够暂停它们——这意味着他们可以停止打印并防止打印尚未发送到打印机的文件;当然,已经发送到打印机的那些不能停止。

问题是:为了能够暂停打印,我不能一次发送所有的东西。我必须一个一个地发送它们,然后接收一些返回值,这将告诉我最后一个打印作业已经完成/成功,允许打印以下文件...

我正在使用 window.print() 但我读到没有返回值,所以也许我应该放弃它。

我是否有机会获得返回值以允许用户控制打印流程?

最佳答案

确实没有办法在浏览器中完成您要查找的内容。有 window.onbeforeprintwindow.onafterprint事件,但操作系统打印功能没有任何反馈到浏览器。

在非浏览器应用程序中也确实没有办法处理这个问题。当然,操作系统可以告诉您打印机是否“吸收”了该作业,但是根据打印机的排队方式,这可能仅仅意味着该作业已移至从属队列(例如,在打印机内部)并且纸张没有'实际打印出来。

当我被要求这样做(在我编写的库存管理应用程序中打印标签)时,我只是要求用户确认打印成功。我不喜欢这样做,但除了人工查看打印输出并确定可以确认打印成功之外,真的没有别的办法。

(我们只需要一台在纸张路径中带有扫描仪的打印机可以验证输出...>微笑<然后我们需要在扫描仪之后的东西来验证扫描仪没有在纸张路径中卡纸' t acordian the paper up...然后我们需要一个卡纸传感器 jam sensor 以确保卡纸传感器没有卡纸...它一直是乌龟。)

关于printing - Javascript - 如何判断 window.print() 是否成功?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24433242/

相关文章:

twitter-bootstrap - 如何打印 Bootstrap 轮播中的所有项目

javascript - 将 session 数据与其他 Angular Directive(指令)和 Controller 同步

css - 如何为 8.5x11 英寸打印页面设置 CSS 格式

java - 如何接受和输出数组中的 double 和整数?

javascript - 是否可以使用 .print() 函数从特定选择器打印内容?

visual-studio - 从 Visual Studio 2010 进行彩色打印

javascript - meteor .js : lib folder not loaded first

javascript - 使用javascript销毁flash对象

javascript - 禁用提交,直到表单填写完毕 javascript

javascript - 是否可以使用 pdfmake.js 重复 pdf 文件中的表格行