1 void PrinterCtl::writeMyCom(QByteArray data) 2 { 3 int l = 0; 4 for(int i = MaxLength; i < data.size() - 1; i += MaxLength){ 5 if(qAbs(data.indexOf(' ', i-1) - i) > 1){ 6 l = data.lastIndexOf(' ',i); 7 if(l != -1 && l > i - MaxLength){ 8 data.insert(l, QString("%1").arg("", i-l-1, QLatin1Char(' '))); 9 } 10 } 11 } 12 myCom->write(data); 13 }
QT串口实现,没找到现成的记录一下,大概思路就是检查行末不是空格且不是文本结尾时,找本行最后一个空格延长,把本来这行的半个单词推到下一行
标签:打印机,换行,热敏,单词,int,MaxLength,文本,data From: https://www.cnblogs.com/KKKA/p/17081852.html