amazingbo 2019-07-01
继上篇的python3转换code128条形码之后,发现,由于code128
密度太高,依然无法清晰打印。
迫于无奈,只能选择这个密度低的条形码,就是:交叉25码
(Interleaved 2of5
)。
而且这个ITF25
的转换规则也很变态,看了几篇文章后才领悟,参考:文章1 文章2
关键点是:
def conver_itf25(self, inputData): start_index = 0 datalist = [] if len(inputData) % 2 is not 0: start_index = 1 datalist.append(inputData[0]) datalist += re.findall(r'\d{2}', inputData[start_index:]) result = '' for i, numStr in enumerate(datalist): intStr = int(numStr) if intStr <= 49: result += chr(intStr + 48) else: result += chr(intStr + 142) return '(' + result + ')'
有需要的拿走,点个赞,谢了!