SEBLEPrinter
SEBLEPrinter copied to clipboard
部分打印机乱码
使用demo,同一型号的不同打印机,有的正常,有的乱码。找不出乱码规律。
机型:芯烨的58IIH

这也行?我们这边打印机目前就一台,无法重现你的问题,估计还是图片转点阵图那里的问题,你先试试看本地的小图标图片OK不
我没打印图片呢,只是文本
测试时,打五行普通文本正常,到第六行就乱码。
- 打印六行的代码如下

- 打印文本的代码,注释掉了字号的设置(排除干扰)

- 正常打印出来应该的样式是:
- 无论正常机子还是乱码机子,代码最后输出的data一直

- 将机子转为16进制打印,正常机子打印如下
- 将机子转为16进制打印,乱码机子打印如下(从圈出来的地方开始,正常机子和乱码机子16进制开始不一样)
你对比出来打印出乱码的机器的16进制确实错了,那里0A表示换行,1B 61 01表示用最小的字体,而乱码的打印机变成36 61 01,打印机识别不了这个指令的意思。 建议你在打印前将NSData转换成16进制后在Xcode控制台打印出来,看是否正确,如果错误说明拼接的NSData就出错了;如果控制台打印出来是正确的,蓝牙打印机打印出来就变成错误的16进制,我猜测是打印机有问题。 如果是上面猜测的打印机问题,建议你看下这篇文章http://www.jianshu.com/p/2d624044a27b,然后徒手拼接一下要打印的NSData,再确认一下蓝牙打印机是否有问题。
Portable Printer 淘宝买的 300多 打印出来乱码 @Halley-Wong @sally1021
淘宝换了一台机子 还是乱码 求救 图片上传不了

因为我这里没有各种型号的打印机,暂时还无法得知是什么原因😞 。你看下打印机的指令集,建议用ASCII码试试。
请问是这样吗
不是,是将所有的0x0A,0x1B,等这样的换成ASCII码,不是字符串的编码,字符串编码要看你们打印机是用什么编码,一般都是GB18030_2000那个格式
将所有的0x0A,0x1B,等这样的换成ASCII码 还是乱码哎
建议你找下客服,一般做蓝牙打印机的都有SDK,我也是跟他们客服,技术客服,公司技术支持,沟通了一圈,才知道他们有SDK, 他们SDK里做了一些处理。客服不知道的话,建议你打官网售后电话。
我对比了一下别的可以打印的三方 发现你跟他的区别是 你用的appendBytes 人家用的appendData
我里面部分用的appendBytes 部分用的appendData,这个应该不是关键,不过还是谢谢。稍后我尝试全部改为appendData试试看。
您github看看那个xbprint swift写的 我不太懂swift 对比不出来你们2个的主要区别 不过这个确实可以打印~~ 封装可能没你的好
我对比,经过多次测试,测试结果,有些型号的打印机可能对一次写入的数据大小有限制,我将那些要打印的数据,一行writeValue一次,文字就可以正常打印出来了。二维码和条形码估计不能用本地生成图片发送的形式了。明天更新库和Demo。
哈哈 好像的确是这个原因 期待您的修复 您QQ多少? 咱们加个好友多多交流 提提意见哈
已经更新了代码,提供了分多次打印的示例代码。
关于打印机的亮红灯的时候,回调还是显示成功,能检测到打印机亮红灯的时候的状况吗
给出的事例里边,第一次打印,最后的二维码打不完,再打一次,开头就变成??????????????????????????????????????问号了