条形码和二维码是现代信息交换和数据存储的重要工具,它们将信息以图形的形式编码,便于机器识别和数据处理,被广泛应用于物流、零售、医疗、教育等各领域。
本文将介绍如何使用Python快速生成各种常见的条形码如Code 128、EAN-13,以及生成二维码。
本文需要用到 Spire.Barcode for Python 库,该库支持生成、识别各类一维和二维条码,包括 EAN, UPC, Code128, Code39, QR Code, Data Matrix 等,满足各种应用需求。此外还提供了丰富的接口来自定义条码图片的边框样式、颜色、边距等属性。
该Python条码生成库可以通过 pip轻松安装:
1 |
pip install Spire.Barcode |
要使用Spire.Barcode for Python库生成条码,主要会用到以下类、属性、方法:
以下为生成条码的Python代码示例
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
from spire.barcode import *
def WriteAllBytes(fname: str, data): with open(fname, "wb") as fp: fp.write(data) fp.close()
# 创建BarcodeSettings对象 barcodeSettings = BarcodeSettings()
# 将条码类型设置为Code128 barcodeSettings.Type = BarCodeType.Code128
# 设置条码数据 barcodeSettings.Data = "XD00555"
# 设置Code128条形码的代码集 barcodeSettings.Code128SetMode = Code128SetMode.Auto
# 创建BarCodeGenerator对象 barCodeGenerator = BarCodeGenerator(barcodeSettings)
# 生成条码图片 barcodeimage = barCodeGenerator.GenerateImage() WriteAllBytes("Code128.png", barcodeimage) |
条码图:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
from spire.barcode import *
def WriteAllBytes(fname: str, data): with open(fname, "wb") as fp: fp.write(data) fp.close()
# 创建BarcodeSettings对象 barcodeSettings = BarcodeSettings()
# 将条码类型设置为EAN13 barcodeSettings.Type = BarCodeType.EAN13
# 设置条码数据 barcodeSettings.Data = "5019632805254"
# 创建BarCodeGenerator对象 barCodeGenerator = BarCodeGenerator(barcodeSettings)
# 生成条码图片 barcodeimage = barCodeGenerator.GenerateImage() WriteAllBytes("EAN13.png", barcodeimage) |
条码图:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
from spire.barcode import *
def WriteAllBytes(fname:str,data): fp = open(fname,"wb") fp.write(data) fp.close()
# 创建BarcodeSettings对象 barcodeSettings = BarcodeSettings()
# 将条码类型设置为QR Code barcodeSettings.Type = BarCodeType.QRCode
# 设置背景颜色 barcodeSettings.BackColor = Color.get_WhiteSmoke()
# 设置QR Code的编码模式 barcodeSettings.QRCodeDataMode = QRCodeDataMode.Byte
# 设置纠错等级(ECL) barcodeSettings.QRCodeECL = QRCodeECL.M
# 设置是否在二维码底部显示文本 barcodeSettings.ShowTextOnBottom = True
# 设置分辨率 barcodeSettings.DpiX = 500 barcodeSettings.DpiY = 500
# 设置二维码数据 barcodeSettings.Data2D = "Hello, World"
# 创建BarCodeGenerator对象 barCodeGenerator = BarCodeGenerator(barcodeSettings)
# 生成二维码图片 barcodeimage = barCodeGenerator.GenerateImage() WriteAllBytes("QRCode.png", barcodeimage) |
条码图: