使用Python生成条形码图片的实战代码

 更新时间:2025年05月19日 11:11:44   作者:Eiceblue  
在自动化生产、物流配送、商超系统等日常业务中,条形码已成为数据快速读取与追踪的核心方式,相比手工设计,使用 Python 编程生成条形码图片,能显著提升效率并支持批量处理,本文将介绍如何使用Python生成条形码,需要的朋友可以参考下

本文使用的是Free Spire.Barcode for Python,安装命令:pip install spire.barcode.free

用Python生成指定类型的条形码

我们可以用该库生成各种类型的条形码,包括Code 128、UPC等。这里我们以Code 128条形码为例。Code 128是一种高密度的线性条形码类型,支持全ASCII字符集,非常适合库存编号、物流单号等信息编码。
生成条形码的基本步骤如下:

  1. 导入相关模块
  2. 创建条码设置对象BarcodeSettings()并配置类型与数据
  3. 使用BarCodeGenerator()实例生成图像
  4. 将图像保存为本地PNG文件

代码示例

from spire.barcode import BarcodeSettings, BarCodeType, BarCodeGenerator, Code128SetMode, FontStyle, Color

# 初始化条码设置
settings = BarcodeSettings()
settings.Type = BarCodeType.Code128           # 设置条码类型
settings.Data = "ABC123456789"                # 设置编码内容
settings.Code128SetMode = Code128SetMode.Auto # 使用自动字符集
settings.ShowTextOnBottom = True              # 显示底部文本
settings.BottomText = "Code 128 示例"          # 设置底部文字
settings.SetTextFont("Arial", 12.0, FontStyle.Regular)
settings.ShowBottomText = True                # 显示底部文字
settings.BackColor = Color.get_Beige()        # 设置背景颜色

# 生成条码图像
generator = BarCodeGenerator(settings)
barcode_image = generator.GenerateImage()

# 保存为本地PNG文件
with open("output/code128.png", "wb") as f:
    f.write(barcode_image)

生成效果图如下:

批量生成多个条形码

在一些应用场景中,可能需要一次性生成大量条形码,例如为每件商品或每个订单生成唯一编号。以下示例演示如何使用循环实现批量条码创建:

from spire.barcode import BarcodeSettings, BarCodeType, BarCodeGenerator

# 待编码的数据列表
barcode_list = ["ITEM001", "ITEM002", "ITEM003"]

# 遍历生成条码
for data in barcode_list:
    settings = BarcodeSettings()
    settings.Type = BarCodeType.Code39   # 可根据需求修改为其他类型
    settings.Data = data

    generator = BarCodeGenerator(settings)
    barcode_image = generator.GenerateImage()

    with open(f"output/{data}.png", "wb") as f:
        f.write(barcode_image)

每条数据将分别生成对应的PNG图片,自动命名为数据内容,适合批量标识系统。

支持的条码类型

Spire.Barcode for Python 支持多种条形码与二维码类型,包括但不限于:

  • 1D线性条码:Code 128, Code 39, EAN-13, UPC-A, Codabar 等
  • 2D二维码:QRCode, DataMatrix, PDF417, Aztec 等
  • 邮政与堆叠码

详细条码类型支持情况可参考Spire.Barcode for Python官方文档。

通过以上方法,我们可以灵活地在 Python 项目中集成条形码生成功能,实现自动化批处理、个性化编码与图像输出。无论是小型应用还是大规模部署,Spire.Barcode for Python 都能提供高质量、易上手的条码解决方案。

到此这篇关于使用Python生成条形码图片的实战代码的文章就介绍到这了,更多相关Python生成条形码图片内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 我就是这样学习Python中的列表

    我就是这样学习Python中的列表

    这篇文章主要给大家介绍了关于我是如何学习Python中的列表的,文中通过示例代码介绍的非常详细,对大家学习或者使用Python具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-06-06
  • Python 时间操作datetime详情(下)

    Python 时间操作datetime详情(下)

    我们在上一文datetime模块对datetime模块中包含了六个类对象如date、time、datetime等对时间和日期进行操作。这一篇文章我们继续上一篇文章的内容学习datetime模块中六大类的相关方法和属性
    2021-11-11
  • python中httpx库的详细使用方法及案例详解

    python中httpx库的详细使用方法及案例详解

    httpx 是一个现代化的 Python HTTP 客户端库,支持同步和异步请求,功能强大且易于使用,它比 requests 更高效,支持 HTTP/2 和异步操作,以下是 httpx 的详细使用方法,感兴趣的小伙伴跟着小编一起来看看吧
    2025-02-02
  • python中format的用法实例详解

    python中format的用法实例详解

    fotmat作为Python的的格式字符串函数,主要通过字符串中的花括号{},来识别替换字段,从而完成字符串的格式化,下面这篇文章主要给大家介绍了关于python中format用法的相关资料,需要的朋友可以参考下
    2022-05-05
  • python tornado微信开发入门代码

    python tornado微信开发入门代码

    这篇文章主要为大家详细介绍了python tornado微信开发入门代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-08-08
  • 基于opencv和pillow实现人脸识别系统(附demo)

    基于opencv和pillow实现人脸识别系统(附demo)

    人脸识别就是一个程序能识别给定图像或视频中的人脸,本文主要介绍了opencv和pillow实现人脸识别系统,本文不涉及分类器、训练识别器等算法原理,感兴趣的可以了解一下
    2021-11-11
  • Python PSO算法处理TSP问题详解

    Python PSO算法处理TSP问题详解

    这篇文章主要介绍了Python PSO算法处理TSP问题,PSO粒子群算法是一种基于鸟类觅食开发出来的优化算法,它是从随机解出发,通过迭代寻找最优解,通过适应度来评价解的品质
    2022-11-11
  • python如何实时获取tcpdump输出

    python如何实时获取tcpdump输出

    这篇文章主要介绍了python如何实时获取tcpdump输出,帮助大家更好的理解和使用python,感兴趣的朋友可以了解下
    2020-09-09
  • Python创建空列表的字典2种方法详解

    Python创建空列表的字典2种方法详解

    这篇文章主要介绍了Python创建空列表的字典2种方法详解,需要的朋友可以参考下
    2020-02-02
  • python使用标准库根据进程名如何获取进程的pid详解

    python使用标准库根据进程名如何获取进程的pid详解

    Python有一套很有用的标准库(standard library)。标准库会随着Python解释器,一起安装在你的电脑中的,所以下面这篇文章主要给大家介绍了关于python使用标准库根据进程名如何获取进程pid的相关资料,需要的朋友可以参考下。
    2017-10-10

最新评论