已经连接到打印机了,但是打印出乱码。 现在的问题是小程序的蓝牙接口要求写入数据为 ArrayBuffer 形式,而打印机那边需要接受 gb2312 的格式。 我将打印命令保存在本地,应该如何将字符串转换成 gb2312,再转换成 ArrayBuffer? 大佬们求救~
已经连接到打印机了,但是打印出乱码。 现在的问题是小程序的蓝牙接口要求写入数据为 ArrayBuffer 形式,而打印机那边需要接受 gb2312 的格式。 我将打印命令保存在本地,应该如何将字符串转换成 gb2312,再转换成 ArrayBuffer? 大佬们求救~
var hex = strToHexCharCode("! 0 200 200 560 1") + "0D0A" +
strToHexCharCode("PAGE-WIDTH 450") + "0D0A" +
strToHexCharCode("TEXT 24 2 20 80 你好") + strToHexCharCode(str) + "0D0A"+
strToHexCharCode("PRINT") + "0D0A"
var typedArray = new Uint8Array(hex.match(/[\da-f]{2}/gi).map(function (h) { return parseInt(h, 16) }))
var buffer1 = typedArray.buffer
请问一下你好打印出来是乱码,怎么才能解决呢谢谢~
13 回答12.7k 阅读
7 回答1.8k 阅读
3 回答1.1k 阅读✓ 已解决
2 回答1.1k 阅读✓ 已解决
6 回答775 阅读✓ 已解决
6 回答1k 阅读
2 回答1.3k 阅读✓ 已解决
使用这个库 iconv-lite
import iconv from "iconv-lite"
let toWrite = iconv.encode(item.values, 'GBK');
let base64Value = toWrite .toString('base64');