条形码和二维码是现代信息交换和数据存储的重要工具,它们将信息以图形的形式编码,便于机器识别和数据处理,被广泛应用于物流、零售、医疗、教育等各领域。本文将介绍如何使用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码
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)
条码图:
Python 生成 EAN-13码
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)
条码图:
Python 生成二维码 QR Code
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)
条码图:
– 测试过程中遇到的问题可前往论坛交流。
– 对于所生成条码上的水印,可以由此申请1个月试用授权来移除:https://www.e-iceblue.cn/misc/temporary-license.html
1.本站内容仅供参考,不作为任何法律依据。用户在使用本站内容时,应自行判断其真实性、准确性和完整性,并承担相应风险。
2.本站部分内容来源于互联网,仅用于交流学习研究知识,若侵犯了您的合法权益,请及时邮件或站内私信与本站联系,我们将尽快予以处理。
3.本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权
4.根据《计算机软件保护条例》第十七条规定“为了学习和研究软件内含的设计思想和原理,通过安装、显示、传输或者存储软件等方式使用软件的,可以不经软件著作权人许可,不向其支付报酬。”您需知晓本站所有内容资源均来源于网络,仅供用户交流学习与研究使用,版权归属原版权方所有,版权争议与本站无关,用户本人下载后不能用作商业或非法用途,需在24个小时之内从您的电脑中彻底删除上述内容,否则后果均由用户承担责任;如果您访问和下载此文件,表示您同意只将此文件用于参考、学习而非其他用途,否则一切后果请您自行承担,如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。
5.本站是非经营性个人站点,所有软件信息均来自网络,所有资源仅供学习参考研究目的,并不贩卖软件,不存在任何商业目的及用途
暂无评论内容