使用Python生成條形碼圖片的實(shí)戰(zhàn)代碼
本文使用的是Free Spire.Barcode for Python,安裝命令:pip install spire.barcode.free
。
用Python生成指定類型的條形碼
我們可以用該庫(kù)生成各種類型的條形碼,包括Code 128、UPC等。這里我們以Code 128條形碼為例。Code 128是一種高密度的線性條形碼類型,支持全ASCII字符集,非常適合庫(kù)存編號(hào)、物流單號(hào)等信息編碼。
生成條形碼的基本步驟如下:
- 導(dǎo)入相關(guān)模塊
- 創(chuàng)建條碼設(shè)置對(duì)象
BarcodeSettings()
并配置類型與數(shù)據(jù) - 使用
BarCodeGenerator()
實(shí)例生成圖像 - 將圖像保存為本地PNG文件
代碼示例
from spire.barcode import BarcodeSettings, BarCodeType, BarCodeGenerator, Code128SetMode, FontStyle, Color # 初始化條碼設(shè)置 settings = BarcodeSettings() settings.Type = BarCodeType.Code128 # 設(shè)置條碼類型 settings.Data = "ABC123456789" # 設(shè)置編碼內(nèi)容 settings.Code128SetMode = Code128SetMode.Auto # 使用自動(dòng)字符集 settings.ShowTextOnBottom = True # 顯示底部文本 settings.BottomText = "Code 128 示例" # 設(shè)置底部文字 settings.SetTextFont("Arial", 12.0, FontStyle.Regular) settings.ShowBottomText = True # 顯示底部文字 settings.BackColor = Color.get_Beige() # 設(shè)置背景顏色 # 生成條碼圖像 generator = BarCodeGenerator(settings) barcode_image = generator.GenerateImage() # 保存為本地PNG文件 with open("output/code128.png", "wb") as f: f.write(barcode_image)
生成效果圖如下:
批量生成多個(gè)條形碼
在一些應(yīng)用場(chǎng)景中,可能需要一次性生成大量條形碼,例如為每件商品或每個(gè)訂單生成唯一編號(hào)。以下示例演示如何使用循環(huán)實(shí)現(xiàn)批量條碼創(chuàng)建:
from spire.barcode import BarcodeSettings, BarCodeType, BarCodeGenerator # 待編碼的數(shù)據(jù)列表 barcode_list = ["ITEM001", "ITEM002", "ITEM003"] # 遍歷生成條碼 for data in barcode_list: settings = BarcodeSettings() settings.Type = BarCodeType.Code39 # 可根據(jù)需求修改為其他類型 settings.Data = data generator = BarCodeGenerator(settings) barcode_image = generator.GenerateImage() with open(f"output/{data}.png", "wb") as f: f.write(barcode_image)
每條數(shù)據(jù)將分別生成對(duì)應(yīng)的PNG圖片,自動(dòng)命名為數(shù)據(jù)內(nèi)容,適合批量標(biāo)識(shí)系統(tǒng)。
支持的條碼類型
Spire.Barcode for Python 支持多種條形碼與二維碼類型,包括但不限于:
- 1D線性條碼:Code 128, Code 39, EAN-13, UPC-A, Codabar 等
- 2D二維碼:QRCode, DataMatrix, PDF417, Aztec 等
- 郵政與堆疊碼
詳細(xì)條碼類型支持情況可參考Spire.Barcode for Python官方文檔。
通過(guò)以上方法,我們可以靈活地在 Python 項(xiàng)目中集成條形碼生成功能,實(shí)現(xiàn)自動(dòng)化批處理、個(gè)性化編碼與圖像輸出。無(wú)論是小型應(yīng)用還是大規(guī)模部署,Spire.Barcode for Python 都能提供高質(zhì)量、易上手的條碼解決方案。
到此這篇關(guān)于使用Python生成條形碼圖片的實(shí)戰(zhàn)代碼的文章就介紹到這了,更多相關(guān)Python生成條形碼圖片內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python中httpx庫(kù)的詳細(xì)使用方法及案例詳解
httpx 是一個(gè)現(xiàn)代化的 Python HTTP 客戶端庫(kù),支持同步和異步請(qǐng)求,功能強(qiáng)大且易于使用,它比 requests 更高效,支持 HTTP/2 和異步操作,以下是 httpx 的詳細(xì)使用方法,感興趣的小伙伴跟著小編一起來(lái)看看吧2025-02-02python tornado微信開(kāi)發(fā)入門代碼
這篇文章主要為大家詳細(xì)介紹了python tornado微信開(kāi)發(fā)入門代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-08-08基于opencv和pillow實(shí)現(xiàn)人臉識(shí)別系統(tǒng)(附demo)
人臉識(shí)別就是一個(gè)程序能識(shí)別給定圖像或視頻中的人臉,本文主要介紹了opencv和pillow實(shí)現(xiàn)人臉識(shí)別系統(tǒng),本文不涉及分類器、訓(xùn)練識(shí)別器等算法原理,感興趣的可以了解一下2021-11-11python如何實(shí)時(shí)獲取tcpdump輸出
這篇文章主要介紹了python如何實(shí)時(shí)獲取tcpdump輸出,幫助大家更好的理解和使用python,感興趣的朋友可以了解下2020-09-09python使用標(biāo)準(zhǔn)庫(kù)根據(jù)進(jìn)程名如何獲取進(jìn)程的pid詳解
Python有一套很有用的標(biāo)準(zhǔn)庫(kù)(standard library)。標(biāo)準(zhǔn)庫(kù)會(huì)隨著Python解釋器,一起安裝在你的電腦中的,所以下面這篇文章主要給大家介紹了關(guān)于python使用標(biāo)準(zhǔn)庫(kù)根據(jù)進(jìn)程名如何獲取進(jìn)程pid的相關(guān)資料,需要的朋友可以參考下。2017-10-10