是否有可能用node.js打印图像?

好的,所以我试图从网页打印(典型的“打印”button,但我不希望打印对话框出现),所以我决定用我已经存在的node.js后端来完成任务(主要因为没有打印对话框,从浏览器打印几乎是不可能的)。

我find了节点打印机( https://github.com/tojocky/node-printer )模块,它工作的很好,但只有文本。 我试图发送RAW数据,但它所做的是打印原始字符。 我真正需要的是打印一个徽标,以及一些转弯信息(这是一个客户服务设施)。

此外,打印机必须安装在本地,所以我不能使用IPP。

有什么办法打印图像,或图像和文字与node.js的组合? 可以通过节点打印机来完成,还是有另外一种方法?

我结束了一个exe的调用来为我做这个工作。 我使用一个child_process来调用printhtml ,它为我完成所有的打印工作。 我的代码以这种方式结束:

 var exec = require('child_process').exec; exec('printhtml.exe file=file.html', function(err, data) { console.log(data.toString()); }); 

实际上,您可以使用node-printer打印图像。 这为我工作

 var Printer = require('node-printer'); var fs = require('fs'); // Get available printers list var listPrinter = Printer.list(); // Create a new Pinter from available devices var printer = new Printer('YOUR PRINTER HERE. GET IT FROM listPrinter'); // Print from a buffer, file path or text var fileBuffer = fs.readFileSync('PATH TO YOUR IMAGE'); var jobFromBuffer = printer.printBuffer(fileBuffer); // Listen events from job jobFromBuffer.once('sent', function() { jobFromBuffer.on('completed', function() { console.log('Job ' + jobFromBuffer.identifier + 'has been printed'); jobFromBuffer.removeAllListeners(); }); }); 

我已经成功使用Node IPP包https://www.npmjs.com/package/ipp

文档上的示例代码(使用另一个节点模块PDFKIT将您的HTML /文件转换为PDF)不起作用。 看到我的答案在这里: 不能打印节点js ipp模块作为一个工作的例子。