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设计】网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

相关文章

在python3环境下的Django中使用MySQL数据库的实例

在python3环境下的Django中使用MySQL数据库的实例

我们在使用Django过程中,数据库往往是离不开的,比较长常用的是MySQL数据库,但在使用过程中,对Python不同的版本对用的库也不一样,用惯了Python2的人在使用Python3...

python sys.argv[]用法实例详解

python sys.argv[]用法实例详解

sys.argv[]是用来获取命令行参数的,sys.argv[0]表示代码本身文件路径,所以参数从1开始,以下两个例子说明: 1、使用sys.argv[]的一简单实例: 以下是sampl...

基于Django框架利用Ajax实现点赞功能实例代码

基于Django框架利用Ajax实现点赞功能实例代码

概要: 要实现点赞功能,需要实现的有:谁进行的点赞、什么时候进行点赞、点赞的对象是谁、每一个对象的点赞数量是多少、点赞过后还需要能够取消点赞,为了是点赞后的信息能够及时的显示在前端页面,...

Python的Django框架中的URL配置与松耦合

现在是好时机来指出Django和URL配置背后的哲学: 松耦合 原则。 简单的说,松耦合是一个 重要的保证互换性的软件开发方法。 Django的URL配置就是一个很好的例子。 在Djan...

Python中%r和%s的详解及区别

Python中%r和%s的详解 %r用rper()方法处理对象 %s用str()方法处理对象 有些情况下,两者处理的结果是一样的,比如说处理int型对象。 例一: print...