Javascript ESC POS蓝牙打印机清除缓冲区
我正在使用React Native构建一个打印票证的应用程序。我已经成功地使用浙江公司的蓝牙打印机5802和5802-LD进行了打印。 有一个问题,我不知道具体的来源,但是当Java方法不等待打印机实际打印,而只是编写命令指令时,我遇到了一个问题,我最终一次发送所有打印命令。 有时这会导致打印机缺纸,我希望清除缓冲区,而不是继续打印 在这里,您可以找到编程手册,在76mm打印机的第20页末尾,有一个命令ESC@应该清除缓冲区并初始化打印机(再次),但它没有(我的打印机是58mm,但也参考了ESC@命令)。该命令手册有以下说明: 在他们的网站上还有几个android APK可以在android Studio上构建: 我在他们的示例中发现了相同的命令:Javascript ESC POS蓝牙打印机清除缓冲区,javascript,java,thermal-printer,escpos,Javascript,Java,Thermal Printer,Escpos,我正在使用React Native构建一个打印票证的应用程序。我已经成功地使用浙江公司的蓝牙打印机5802和5802-LD进行了打印。 有一个问题,我不知道具体的来源,但是当Java方法不等待打印机实际打印,而只是编写命令指令时,我遇到了一个问题,我最终一次发送所有打印命令。 有时这会导致打印机缺纸,我希望清除缓冲区,而不是继续打印 在这里,您可以找到编程手册,在76mm打印机的第20页末尾,有一个命令ESC@应该清除缓冲区并初始化打印机(再次),但它没有(我的打印机是58mm,但也参考了ESC
当我需要实际初始化打印时,它似乎可以工作,但之后它就不能像手册中的描述那样工作了。有没有人有过使用蓝牙ESC/POS打印机的想法或经验,知道我应该如何操作?你已经很久没有发帖了,但这可能会帮助一些苦苦挣扎的人 我用ionic 3框架开发了一个小型移动应用程序。我的主要问题之一是印刷服务 最后的用户需要打印收据。 我所做的是制作一个
uint8Array()
并合并其中的所有小数数据。我也试过使用缓冲区
我在一次发送所有数据时遇到问题。打印机在同一点停止。我拆开变量,计算它们的字节大小,看看是否有什么错误,但什么都没有出现
我试图将我的最终变量数据分解成更小的变量,并用ESC@
初始化,但这也不起作用
在互联网上搜索时,一些“大师”说,你可以ESC@
使用一整套4kbytes
。我还尝试用高达4kb的空字符填充剩余数组的其余部分,并尝试初始化,但也不初始化
最后我做了一个非常“猴子式”的解决方案,我为此感到羞愧
我在我的小鱼身上做了一个seTimout循环
setTimeout(() => {
this.btSerial.write(uint8Array)
.then(dataz => {
console.log("WRITE SUCCESS", dataz);
});
}, 100 + n *100)
当然,它起了作用
我认为问题在于,android可以每隔几毫秒通过蓝牙发送一次本地字节,但我不确定
希望我能帮点忙
附言
不要试图开发在跨平台框架中使用本机功能的移动应用程序。你最终将总是试图学习和编写程序包,以便与本地人进行通信。你发帖已经很长时间了,但这可能有助于那些苦苦挣扎的人 我用ionic 3框架开发了一个小型移动应用程序。我的主要问题之一是印刷服务 最后的用户需要打印收据。 我所做的是制作一个
uint8Array()
并合并其中的所有小数数据。我也试过使用缓冲区
我在一次发送所有数据时遇到问题。打印机在同一点停止。我拆开变量,计算它们的字节大小,看看是否有什么错误,但什么都没有出现
我试图将我的最终变量数据分解成更小的变量,并用ESC@
初始化,但这也不起作用
在互联网上搜索时,一些“大师”说,你可以ESC@
使用一整套4kbytes
。我还尝试用高达4kb的空字符填充剩余数组的其余部分,并尝试初始化,但也不初始化
最后我做了一个非常“猴子式”的解决方案,我为此感到羞愧
我在我的小鱼身上做了一个seTimout循环
setTimeout(() => {
this.btSerial.write(uint8Array)
.then(dataz => {
console.log("WRITE SUCCESS", dataz);
});
}, 100 + n *100)
当然,它起了作用
我认为问题在于,android可以每隔几毫秒通过蓝牙发送一次本地字节,但我不确定
希望我能帮点忙
附言
不要试图开发在跨平台框架中使用本机功能的移动应用程序。您将总是试图学习和编写程序包以进行本机通信。在setTimeout函数中使用的变量“n”是什么?在setTimeout函数中使用的变量“n”是什么?