当前有一台支持ESC / P原始打印的票据打印机。
我正在构建一个需要远程打印收据的应用程序。
我如何做
通过PrintNodes API将数据从我的应用发送到打印机。
我使用了NPM库“ ESCPOS”,并成功打印了一些样本。
('ESCPOS' npm不是远程打印库-但我进行了测试以确保一切正常且正常运行)
打印节点要求您的打印作业的内容类型为“ raw_base64”。
所以我接受了原始命令
将它们转换为十六进制字节
0x1B"@"0x1B0x38'should be bold'
然后将其转换为base_64
MHgxQiJAIjB4MUIweDM4J3Nob3VsZCBiZSBib2xkJw==
我得到的是经过解码的base64的纯文本,而不是我发送给打印机的渲染命令。
上面的示例收据应为加粗的字符串“应该加粗”。
返回的是原始esc / p命令的所有十六进制值。
我尝试了ESCPOS(NPM库),并在没有Printnode的情况下将数据直接发送到打印机,并且打印效果完美。
这使我相信也许我没有正确发送数据。
这是我在发帖请求中发送给printnode api的内容
let bodytosend = {
printer: 69079558,
title: 'Sample Print Job',
contentType: 'raw_base64',
content: "MHgxQiJAIjB4MUIweDM4J3Nob3VsZCBiZSBib2xkJw==",
source: 'Created from node app.js'
}
答案 0 :(得分:0)
只是碰到了这个仓库。
收据
可打印的数字收据
将类似markdown的文本转换为收据打印机命令或SVG图像。
https://github.com/receiptline/receiptline