バーコードは、在庫管理、小売システム、物流など、さまざまなデータ駆動型分野において不可欠な存在です。Python でバーコードを生成するには、複数の形式への対応や大規模な自動処理などの理由から、複雑になることがあります。そのため、柔軟かつ効率的にバーコードを作成できる、信頼性の高い Python バーコード生成ライブラリが必要です。
本記事では、Spire.Barcode for Python を使用して、Python で正確かつ効率的にバーコードを生成する方法をご紹介します。
Spire.Barcode for Python を使ってみよう
Spire.Barcode を選ぶ理由
Spire.Barcode for Python は、Python アプリケーションにバーコードの生成・読み取り機能を追加したい開発者向けに設計された、使いやすく高機能なバーコードライブラリです。以下のような特長があります:
- Code 128、QR コード、EAN-13、UPC など、幅広いバーコード規格に対応
- 高品質な画像出力と柔軟なカスタマイズ設定
- わかりやすく統合しやすい API
- 外部依存なし(サードパーティ不要)
- 1 つのライブラリでバーコードの生成とスキャンの両方に対応
インストールとインポート
Spire.Barcode for Python をインストールするには、以下のコマンドを実行します:
pip install spire.barcode
簡単なバーコード生成であれば、無償版の Free Spire.Barcode for Python も利用できます:
pip install spire.barcode.free
Python でバーコードを生成する手順
Python でバーコードを作成するには、通常、バーコードの種類(例:Code 128 や QR コード)とエンコードするデータを指定します。Spire.Barcode のようなライブラリを使用すれば、わずか数行のコードで設定できます。
主なクラスとメソッド
- BarcodeSettings:バーコードの種類、データ、色、テキストなどを設定
- BarCodeGenerator:指定された設定からバーコード画像を生成
- GenerateImage():画像ストリームとして出力
ステップ1:必要なモジュールのインポート
まずは、Pythonスクリプトの先頭で必要なクラスをインポートします。
- Python
from spire.barcode import BarcodeSettings, BarCodeType, BarCodeGenerator, Code128SetMode, FontStyle, Color
ステップ2:バーコード設定の構成
BarcodeSettings オブジェクトを作成し、バーコードのプロパティを設定します。
- Python
# BarcodeSettingsオブジェクトの作成
barcodeSettings = BarcodeSettings()
# バーコードの種類を設定(ここではCode 128)
barcodeSettings.Type = BarCodeType.Code128
# バーコードにエンコードするデータ
barcodeSettings.Data = "ABC123456789"
# Code128のセットモードを自動に設定
barcodeSettings.Code128SetMode = Code128SetMode.Auto
# データ表示位置の設定(下部に表示)
barcodeSettings.ShowTextOnBottom = True
# 下部テキストの設定とフォントスタイルの指定
barcodeSettings.BottomText = "Code 128"
barcodeSettings.SetTextFont("Arial", 12.0, FontStyle.Regular)
barcodeSettings.ShowBottomText = True
# 背景色の設定
barcodeSettings.BackColor = Color.get_Beige()
ステップ3:バーコード画像の生成
設定済みの BarcodeSettings を使って BarCodeGenerator を作成し、画像を生成して保存します。
- Python
# BarCodeGeneratorの作成
barcodeGenerator = BarCodeGenerator(barcodeSettings)
# バーコード画像の生成
barcodeImage = barcodeGenerator.GenerateImage()
# 画像の保存
with open("output/Code 128.png", "wb") as fp:
fp.write(barcodeImage)
生成されたバーコード:
このスクリプトではCode 128形式のバーコード画像を生成して保存します。
BarCodeType や Data の値を変更すればカスタマイズが可能です。
対応バーコードの種類
Spire.Barcode for Python は、Code 39、UPC、QR コード、EAN-13 など、広く使われているバーコード規格を多数サポートしています。これにより、さまざまな用途に柔軟に対応できます。
対応バーコード形式の一覧
バーコードカテゴリ | 対応規格 | 無償版対応 | 有償版対応 |
1次元バーコード | Codabar, Code11, Code25, Interleaved25, Code39, Code39Extended, Code93, Code93Extended, Code128, EAN8, EAN13, EAN128, EAN14, UPCA, UPCE, MSI, PostNet, Planet, SCC14, SSCC18, ITF14, ITF6, PZN, OPC | ✅(一部) | ✅(すべて) |
2次元バーコード | QRCode, DataMatrix, Pdf417, Pdf417Macro, Aztec, MicroQR | ✅(QRCode のみ) | ✅(すべて) |
スタック型/複合コード | RSS14, RSS14Truncated, RSSLimited, RSSExpanded | ❌ | ✅ |
郵便バーコード | USPS, SwissPostParcel, DeutschePostIdentcode, DeutschePostLeitcode, RoyalMail4State, SingaporePost4State | ❌ | ✅ |
複数バーコードの一括生成
Spire.Barcode for Python を使用すれば、複数のバーコードを一括生成することも可能です。在庫管理やラベル印刷、各種自動処理に最適です。
- Python
# バーコードにしたいデータのリスト
data = ["Barcode 1", "Barcode 2", "Barcode 3"]
# 各データに対してバーコードを生成
for barcode_data in data:
settings = BarcodeSettings()
settings.Type = BarCodeType.Code39
settings.Data = barcode_data
generator = BarCodeGenerator(settings)
barcode_stream = generator.GenerateImage()
with open(f"output/{barcode_data}.png", "wb") as file:
file.write(barcode_stream)
このスクリプトでは、リスト内の各データについてバーコードを生成・保存することで、効率的な一括処理が可能です。
まとめ
Spire.Barcode for Python を使えば、Python でのバーコード生成は驚くほど簡単かつ柔軟になります。Code 128 のような 1 次元バーコードから、QR コードを含む 2 次元バーコードの一括生成まで、あらゆる場面で活用可能です。多様な規格対応と高品質な出力を、最小限のコードで実現できるこのライブラリは、あらゆる業界の開発者にとって心強いツールです。
よくある質問
Pythonでバーコードを作成するには?
Spire.Barcode for Python のようなライブラリを使うことで、Code 128 や QR コードなどさまざまな規格のバーコードを簡単に生成できます。パッケージをインストールし、設定を構成して画像として保存するだけです。
バーコードはどのように生成されるの?
バーコードは、文字列データをバーやモジュールの視覚的パターンに変換して生成されます。Python では、Spire.Barcode のようなライブラリがその変換を行い、対応する画像を出力します。
Pythonでコードジェネレーターを作成するには?
バーコードジェネレーターであれば、バーコードの種類(例:Code 128)とデータを定義し、Spire.Barcode などのライブラリを使って画像を生成・保存します。ループや関数を用いて自動化することも可能です。
PythonでQRコードを生成するには?
Spire.Barcode for Python を使用すれば、QR コードもすばやく生成できます。以下はデータを埋め込んだ QR コードの例です:
- Python
from spire.barcode import BarcodeSettings, BarCodeGenerator, BarCodeType
barcodeSettings = BarcodeSettings()
barcodeSettings.Type = BarCodeType.QRCode
barcodeSettings.Data = "ABC123456"
barcodeGenerator = BarCodeGenerator(barcodeSettings)
with open("output/QRCode.png", "wb") as f:
f.write(barcodeGenerator.GenerateImage())
生成されたQRコード:
この方法で、URL、テキスト、IDなどをQRコードに埋め込むことができます。
関連リンク:PythonでQRコードを生成・読み取る方法
無償ライセンスの入手方法
Spire.Barcode for Python では、機能制限や透かしのない無償評価ライセンスを提供しています。ぜひ このメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。までご連絡のうえ、ライセンスを取得して、この高機能なバーコードライブラリの全機能をお試しください。