macbook,老版本开发工具,版本0.22.203100 (0.22.203100)。使用打印机GP-58MBIII打印小票,经典蓝牙。可以使用指令控制打印格式,可以打印字母数字等,但汉字就乱码,效果如下。另,小程序目前只支持低功耗蓝牙,是指根本不能发现和连接经典蓝牙设备,还是如下图所示,打印不正常。以后是否会支持经典蓝牙?哪位给个解答~
附字符串转ArrayBuffer代码:
function str2ab(str) {
// 19968-40869
var buffer = new ArrayBuffer(str.length * BYTE_PER_ELEMENT)
var dataView = new Uint16Array(buffer)
var array = []
for (var i = 0, len = str.length; i < len; i++) {
var uniStr = str.charCodeAt(i)
console.log('unistr = ' + uniStr + ',' + str.charAt(i))
if (uniStr >= 18868 && uniStr <= 40869) {
// 如果是中文
}
dataView[i] = uniStr
}
return buffer
}
请问你们解决了中文乱码问题了吗?我现在也遇到这个问题。求大神帮忙
这个应该能帮到你
@范范范先森 dataView.setUint8()方法传参有误吧
请问你们解决了中文乱码问题了吗?
测试下来,这款打印机的蓝牙似乎是低功耗的
@第五日凌晨
请教一下怎么打印啊,发送的数据是规定什么格式的吗?
我这个提示指令发送成功,打印机没反应呢。
想问一下这个value 怎么设置呢
@%004A%004F%0045 可以详细请教一下编码的问题吗 我现在遇到了乱码的情况
@第五日凌晨 数字,字母你是怎么转换的,
@王翊夫if mac和真机都试了,结果一样。我问过商家这款打印机不是低功耗,但是API可以用,我该怎么理解。
iOS提供的只是低功耗蓝牙接口,你是在Mac上调试还是iOS真机上调试?
@%004A%004F%0045 明天我用安卓测一下,有结论再给你回复吧