バーコードは、現代の情報交換やデータ保存のための重要なツールです。機械認識やデータ処理を容易にするために、情報をグラフィックの形で符号化し、物流、小売、医療、教育など様々な分野で広く利用されています。
この記事では、PythonでCode 128、EAN-13、QRコードなど、さまざまな一般的なバーコードをすばやく生成する方法を紹介します。
Pythonバーコードライブラリ
この記事では、EAN、UPC、Code128、Code39、QRコード、データマトリックスなど、幅広い1Dおよび2Dバーコードの生成と認識をサポートするSpire.Barcode for Pythonライブラリを使用する必要があります。さらに、このライブラリは、バーコード画像のボーダースタイル、色、マージン、その他の属性をカスタマイズするための豊富なインターフェイスを提供します。
Python Barcode Generatorライブラリは、pip経由で簡単にインストールできます:
pip install Spire.Barcode
コア・クラスと使用メソッド
バーコードの作成に使用される主なクラス、プロパティ、およびメソッドは次のとおりです:
1. BarcodeSettings
クラス:バーコード生成設定に使用。バーコードタイプ、データ、背景色、幅、高さ、マージン、解像度などの設定をサポートします。
2. BarcodeSettings.Type
プロパティ:バーコードタイプを設定します。
3. BarcodeSettings.Data
プロパティ:バーコードデータを設定します。
4. BarcodeSettings.Data2D
プロパティ: 2次元コードのテキストを設定します。
5. BarcodeGenerator
クラス: バーコードのレンダリングに使用します。
6. BarcodeGenerator.GenerateImage()
メソッド:バーコードイメージを生成するために使用します。
バーコードを生成する Python のサンプルコードを以下に示します
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で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でQRコードを生成する
from spire.barcode import *
def WriteAllBytes(fname:str,data):
fp = open(fname,"wb")
fp.write(data)
fp.close()
# BarcodeSettingsオブジェクトの作成
barcodeSettings = BarcodeSettings()
# バーコードタイプをQRコードに設定
barcodeSettings.Type = BarCodeType.QRCode
# 背景色の設定
barcodeSettings.BackColor = Color.get_WhiteSmoke()
# QRコードのエンコードモードの設定
barcodeSettings.QRCodeDataMode = QRCodeDataMode.Byte
# エラー訂正レベル(ECL)の設定
barcodeSettings.QRCodeECL = QRCodeECL.M
# QRコードの下部にテキストを表示するかどうかを設定します
barcodeSettings.ShowTextOnBottom = True
# 解像度の設定
barcodeSettings.DpiX = 500
barcodeSettings.DpiY = 500
# QRコードデータの設定
barcodeSettings.Data2D = "Hello, World"
# BarCodeGeneratorオブジェクトの作成
barCodeGenerator = BarCodeGenerator(barcodeSettings)
# QRコード画像の生成
barcodeimage = barCodeGenerator.GenerateImage()
WriteAllBytes("QRCode.png", barcodeimage)
-
テスト中に問題が発生した場合は、フォーラムをご覧ください。
-
生成されたバーコードの透かしは、1ヶ月のトライアルライセンスを申し込むことで削除できます:https://www.e-iceblue.com/TemLicense.html