Python 生成条形码、二维码 (Code 128、EAN-13、QR code等)

[复制链接]
发表于 2024-7-15 16:01:08 | 显示全部楼层 |阅读模式
条形码和二维码是当代信息交换和数据存储的紧张工具,它们将信息以图形的情势编码,便于呆板辨认和数据处理,被广泛应用于物流、零售、医疗、教育等各范畴。本文将介绍如何使用Python快速生成各种常见的条形码如Code 128、EAN-13,以及生成二维码
 
Python条码库

本文须要用到 Spire.Barcode for Python 库,该库支持生成、辨认各类一维和二维条码,包括 EAN, UPC, Code128, Code39, QR Code, Data Matrix 等,满足各种应用需求。别的还提供了丰富的接口来自定义条码图片的边框样式、颜色、边距等属性。
该Python条码生成库可以通过 pip轻松安装:
pip install Spire.Barcode
 
生成条码的类、方法简介

要使用Spire.Barcode for Python库生成条码,主要会用到以下类、属性、方法:

  • BarcodeSettings 类:用于条码生成的各项设置。支持设置条码类型、数据、背景色、宽高度、边距、分辨率等。
  • BarcodeSettings.Type 属性:设置条码类型。
  • BarcodeSettings.Data 属性:设置条码数据。
  • BarcodeSettings.Data2D 属性:设置二维码文本。
  • BarcodeGenerator 类:用于条码渲染。
  • BarcodeGenerator.GenerateImage() 方法:用于生成条码图片。
 

Python 生成 Code128码
  1. from spire.barcode import *
  2. def WriteAllBytes(fname: str, data):
  3.     with open(fname, "wb") as fp:
  4.         fp.write(data)
  5.     fp.close()
  6. # 创建BarcodeSettings对象
  7. barcodeSettings = BarcodeSettings()
  8. # 将条码类型设置为Code128
  9. barcodeSettings.Type = BarCodeType.Code128
  10. # 设置条码数据
  11. barcodeSettings.Data = "XD00555"
  12. # 设置Code128条形码的代码
  13. barcodeSettings.Code128SetMode = Code128SetMode.Auto
  14. # 创建BarCodeGenerator对象
  15. barCodeGenerator = BarCodeGenerator(barcodeSettings)
  16. # 生成条码图片
  17. barcodeimage = barCodeGenerator.GenerateImage()
  18. WriteAllBytes("Code128.png", barcodeimage)
复制代码
条码图:

 
Python 生成 EAN-13码
  1. from spire.barcode import *
  2. def WriteAllBytes(fname: str, data):
  3.     with open(fname, "wb") as fp:
  4.         fp.write(data)
  5.     fp.close()
  6. # 创建BarcodeSettings对象
  7. barcodeSettings = BarcodeSettings()
  8. # 将条码类型设置为EAN13
  9. barcodeSettings.Type = BarCodeType.EAN13
  10. # 设置条码数据
  11. barcodeSettings.Data = "5019632805254"
  12. # 创建BarCodeGenerator对象
  13. barCodeGenerator = BarCodeGenerator(barcodeSettings)
  14. # 生成条码图片
  15. barcodeimage = barCodeGenerator.GenerateImage()
  16. WriteAllBytes("EAN13.png", barcodeimage)
复制代码
条码图:

 
Python 生成二维码 QR Code
  1. from spire.barcode import *
  2. def WriteAllBytes(fname:str,data):
  3.     fp = open(fname,"wb")
  4.     fp.write(data)
  5.     fp.close()
  6. # 创建BarcodeSettings对象
  7. barcodeSettings = BarcodeSettings()
  8. # 将条码类型设置为QR Code
  9. barcodeSettings.Type = BarCodeType.QRCode
  10. # 设置背景颜色
  11. barcodeSettings.BackColor = Color.get_WhiteSmoke()
  12. # 设置QR Code的编码模式
  13. barcodeSettings.QRCodeDataMode = QRCodeDataMode.Byte
  14. # 设置纠错等级(ECL)
  15. barcodeSettings.QRCodeECL = QRCodeECL.M
  16. # 设置是否在二维码底部显示文本
  17. barcodeSettings.ShowTextOnBottom = True
  18. # 设置分辨率
  19. barcodeSettings.DpiX = 500
  20. barcodeSettings.DpiY = 500
  21. # 设置二维码数据
  22. barcodeSettings.Data2D = "Hello, World"
  23. # 创建BarCodeGenerator对象
  24. barCodeGenerator = BarCodeGenerator(barcodeSettings)
  25. # 生成二维码图片
  26. barcodeimage = barCodeGenerator.GenerateImage()
  27. WriteAllBytes("QRCode.png", barcodeimage)
复制代码
条码图:

– 测试过程中遇到的题目可前往论坛交流。
– 对于所生成条码上的水印,可以由此申请1个月试用授权来移除:https://www.e-iceblue.cn/misc/temporary-license.html
 

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
继续阅读请点击广告

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
回复

使用道具 举报

快速回复 返回顶部 返回列表