python:python-barcode 一个生成条形码的库

695 阅读2分钟

安装

C:\Users\lifeng01>pip install python-barcode
Collecting python-barcode
  Using cached python_barcode-0.13.1-py3-none-any.whl (217 kB)
Installing collected packages: python-barcode
Successfully installed python-barcode-0.13.1

简单使用

想要将条形码生成为SVG对象,可以使用默认的写入器(不指定写入器)。
简单的例子:

import barcode


bar = barcode.get("ean13""123456789102")
print(bar.get_fullcode())

# 运行结果
1234567891026

Process finished with exit code 0

注意点:

  • 首先ean13是固定名称,输入自定义的会抛出异常
  • 其次123456789102必须要有12位数字的字符串,顺序可自定义,不然会抛出异常

上面生成了数字,继续编写代码生成.svg的图片,并存在本地。示例如下:

import barcode


bar = barcode.get("ean13""987654321102")
filename = bar.save("ean13")
print(filename)

# 运行结果:
ean13.svg

Process finished with exit code 0

生成图片如下:

image.png

图片生成完成后,再继续编码生成.svgz的压缩包,并存在本地。示例如下:

import barcode


bar = barcode.get("ean13""987654321102")
options = dict(compress=True)
filename = bar.save("ean13", options)
print(filename)

# 运行结果:
ean13.svgz

Process finished with exit code 0

注意点:

  • dict(compress=True)设置为压缩模式

生成压缩包图片如下:

image.png

生成图像条形码

要将条形码生成为图像,必须向get函数提供ImageWriter。没有任何选项,图像将呈现为PNG。
简单的例子:

import barcode
from barcode.writer import ImageWriter


bar = barcode.get('ean13''123456789102', writer=ImageWriter())
filename = bar.save('ean13')
print(filename)

# 运行结果
ean13.png

Process finished with exit code 0

生成png图片如下:

image.png


以上总结或许能帮助到你,或许帮助不到你,但还是希望能帮助到你,如有疑问、歧义,直接私信留言会及时修正发布;非常期待你的点赞和分享哟,谢谢!

未完,待续…

一直都在努力,希望您也是!

二维码.png