gpt4 book ai didi

javascript - 如何通过使用 javascript/jquery 调用使用 .bat 文件自动打印

转载 作者:行者123 更新时间:2023-11-27 23:09:25 26 4
gpt4 key购买 nike

我有网络应用程序,它有打印功能。它只是使用点阵打印机打印一些 HTML 对齐的内容。但在网络应用程序中,它以图形模式打印,因为这种打印非常慢。所以我尝试使用link解决方案。我的打印方法如下:

var data=[].slice.call($("#printdiv").find("table tr")).map(function(row){
return row.textContent.trim().replace(/\n/g,"\t");
}).join("\n");

window.open("data:application/print;," + escape(data));

我的print.bat如下:

notepad /p %1

当我单击打印按钮时,它只需下载一个文件,然后需要使用 print.bat 文件打开它才能打印,并且效果完美。

我怎样才能自动化它。我的意思是,在单击打印功能时,我想调用 print.bat 文件,并且需要将内容或记事本文件传递到 bat 文件,并且应该无需手动干预即可工作。

我尝试使用 ActiveXObject 调用 .bat 文件,但它在任何地方都不起作用(甚至在 IE 中也不起作用)。

如何使用 javascript/jquery 自动从浏览器调用 .bat 文件并自动打印?

最佳答案

对于 Windows,您可以使用自定义 MIME 处理程序应用程序(由自定义批处理文件提供)对纯文本执行此操作。

  1. 创建一个新的print.bat文件包含 @notepad /p %1 .
  2. 使用类似 https://github.com/rndme/download 的工具下载文本以使用自定义 mime 进行打印:download("Hello World", "temp.prn", "x-application/print");
  3. 在 Chrome 中,右键点击下载栏中的下载内容,然后选择“始终打开此类型的文件”
  4. 重复步骤 2,触发文件打开应用程序选择对话框
  5. 选中“将此应用用于所有 .prn 文件”,然后手动浏览到您的 bat 文件并选择它。可能位于“更多选项”、“寻找其他应用程序...”下。
  6. 您应该听到打印机预热和打印的声音。

Firefox 的说明是类似的,您基本上只需将 bat 文件与自定义 MIME 相关联(在本例中我选择“x-application/print”,但任何未使用的非文本文件都应该可以使用)。然后您可以使用下载程序(或手动 <a download> 链接将字符串作为文本传递到您的打印机。

现场演示:http://pagedemos.com/kwk9wzpq46j3/1 - 确保使用上面的 print.bat 文件打开。

我已经使用这个技巧根据 PHP CMS 中存储的数据自动打印 1,000 个媒体标签,没有明显的导出路径,它对我们来说效果很好。

我认为你不能用图形或其他非文本类的东西来做到这一点。

最后,您可以在记事本的配置中编辑打印标题,并且应该记住您的自定义,以便更好地自动打印任意文本。

关于javascript - 如何通过使用 javascript/jquery 调用使用 .bat 文件自动打印,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36299466/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com