python3转换code128条形码的方法

yipeiwu_com6年前Python基础

这年头如果用 python3 做条形码的,肯定(推荐)用 pystrich

这货官方文档貌似都没写到支持 Code128 ,但是居然有这个类( Code128Encoder )。。。。

一些喷墨打印机,如果质量差一点的话,喷出来的条码,会沾到一起,不好识别。

而用 pystrich 的话,会发觉宽度无法调节。

于是想到了用 条形码字体 来自己控制大小,找是找到字库了,但是你会发觉,你生成的东西,无法被扫描识别,

那是因为,这东西得转换后,才能打印啊。。。

经过千辛万苦,终于找到一篇文章说到转换的,地址在这里

我用的是Code128B,用python重写如下。

def conver_code128b(self, inputData):
  checksum = 104
  for ii, char in enumerate(inputData):
   asciiStr = ord(char)
   if asciiStr >= 32:
    checksum += (asciiStr - 32) * (ii + 1)
   else:
    checksum += (asciiStr + 64) * (ii + 1)
  checksum = checksum % 103
  if checksum < 95:
   checksum += 32
  else:
   checksum += 100
  result = chr(204) + str(inputData) + chr(checksum) + chr(206)
  return result

总结

以上所述是小编给大家介绍的python3转换code128条形码的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对【听图阁-专注于Python设计】网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

相关文章

Python中用Decorator来简化元编程的教程

少劳多得 Decorator 与 Python 之前引入的元编程抽象有着某些共同之处:即使没有这些技术,您也一样可以实现它们所提供的功能。正如 Michele Simionato 和我在...

Python安装lz4-0.10.1遇到的坑

因为项目的需求,要 lz4.0.10.1 的,因为本机已经有一个 1.1.0 版本的,所以必须先卸掉,然后我差点没疯了(手动微笑) sudo pip uninstall lz4 Un...

解决Django连接db遇到的问题

解决Django连接db遇到的问题

1、django.db.utils.ConnectionDoesNotExist: The connection default doesn't exist 解决:第一个连接的命名一定...

介绍Python中的__future__模块

Python的每个新版本都会增加一些新的功能,或者对原来的功能作一些改动。有些改动是不兼容旧版本的,也就是在当前版本运行正常的代码,到下一个版本运行就可能不正常了。 从Python 2....

使用Python的Django框架实现事务交易管理的教程

 如果你花费了很多的时间去进行Django数据库事务处理的话,你将会了解到这是让人晕头转向的。 在过去,只是提供了简单的基础文档,要想清楚知道它是怎么使用的,还必须要通过创建和...