チュートリアル
簡単にライブラリーを使用するためのチュートリアルコレクション
バーコードは、在庫管理、小売システム、物流など、さまざまなデータ駆動型分野において不可欠な存在です。Python でバーコードを生成するには、複数の形式への対応や大規模な自動処理などの理由から、複雑になることがあります。そのため、柔軟かつ効率的にバーコードを作成できる、信頼性の高い Python バーコード生成ライブラリが必要です。
本記事では、Spire.Barcode for Python を使用して、Python で正確かつ効率的にバーコードを生成する方法をご紹介します。
Spire.Barcode for Python は、Python アプリケーションにバーコードの生成・読み取り機能を追加したい開発者向けに設計された、使いやすく高機能なバーコードライブラリです。以下のような特長があります:
Spire.Barcode for Python をインストールするには、以下のコマンドを実行します:
pip install spire.barcode
簡単なバーコード生成であれば、無償版の Free Spire.Barcode for Python も利用できます:
pip install spire.barcode.free
Python でバーコードを作成するには、通常、バーコードの種類(例:Code 128 や QR コード)とエンコードするデータを指定します。Spire.Barcode のようなライブラリを使用すれば、わずか数行のコードで設定できます。
まずは、Pythonスクリプトの先頭で必要なクラスをインポートします。
from spire.barcode import BarcodeSettings, BarCodeType, BarCodeGenerator, Code128SetMode, FontStyle, Color
BarcodeSettings オブジェクトを作成し、バーコードのプロパティを設定します。
# 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()
設定済みの BarcodeSettings を使って BarCodeGenerator を作成し、画像を生成して保存します。
# 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 を使用すれば、複数のバーコードを一括生成することも可能です。在庫管理やラベル印刷、各種自動処理に最適です。
# バーコードにしたいデータのリスト
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 次元バーコードの一括生成まで、あらゆる場面で活用可能です。多様な規格対応と高品質な出力を、最小限のコードで実現できるこのライブラリは、あらゆる業界の開発者にとって心強いツールです。
Spire.Barcode for Python のようなライブラリを使うことで、Code 128 や QR コードなどさまざまな規格のバーコードを簡単に生成できます。パッケージをインストールし、設定を構成して画像として保存するだけです。
バーコードは、文字列データをバーやモジュールの視覚的パターンに変換して生成されます。Python では、Spire.Barcode のようなライブラリがその変換を行い、対応する画像を出力します。
バーコードジェネレーターであれば、バーコードの種類(例:Code 128)とデータを定義し、Spire.Barcode などのライブラリを使って画像を生成・保存します。ループや関数を用いて自動化することも可能です。
Spire.Barcode for Python を使用すれば、QR コードもすばやく生成できます。以下はデータを埋め込んだ QR コードの例です:
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を有効にする必要があります。までご連絡のうえ、ライセンスを取得して、この高機能なバーコードライブラリの全機能をお試しください。
QR コードは、URL や連絡先、決済情報など、さまざまな情報を格納できる 2 次元バーコードの一種です。デジタルコンテンツに素早く簡単にアクセスできるため、QR コードは現代のテクノロジー社会において非常に便利なツールとして広く利用されています。
この記事では、Spire.Barcode for Python を使用して、Python で QR コードを生成および読み取る方法をご紹介します。
Spire.Barcode for Python は、以下の pip コマンドでインストールできます:
pip install spire.barcode
軽量な処理であれば、無償版の Free Spire.Barcode for Python も利用可能です。こちらは次のコマンドでインストールできます:
pip install spire.barcode.free
Spire.Barcode for Python では、BarcodeSettings クラスを使用してバーコード生成に関する各種設定を行うことができます。設定項目には、バーコードの種類、エンコードするデータ、色、余白、解像度(水平および垂直)などが含まれます。
必要な設定を構成したら、それに基づいて BarcodeGenerator インスタンスを作成し、GenerateImage() メソッドを呼び出すことで QR コード画像を生成できます。
Python で QR コードを生成する手順は以下のとおりです:
from spire.barcode import *
# すべてのバイトをファイルに書き込む
def WriteAllBytes(fname: str, data):
with open(fname, "wb") as fp:
fp.write(data)
fp.close()
# ライセンスキーを適用
License.SetLicenseKey("ライセンスキー")
# BarcodeSettings オブジェクトを作成
barcodeSettings = BarcodeSettings()
# バーコードの種類をQRコードに設定
barcodeSettings.Type = BarCodeType.QRCode
# 2次元バーコードのデータを設定
barcodeSettings.Data2D = "Hello, World"
# 余白を設定
barcodeSettings.LeftMargin = 0.2
barcodeSettings.RightMargin = 0.2
barcodeSettings.TopMargin = 0.2
barcodeSettings.BottomMargin = 0.2
# 水平解像度を設定
barcodeSettings.DpiX = 500
# 垂直解像度を設定
barcodeSettings.DpiY = 500
# 誤り訂正レベルを設定
barcodeSettings.QRCodeECL = QRCodeECL.M
# バーコード上にテキストを表示しない
barcodeSettings.ShowText = False
# QRコードの中央にロゴを追加
barcodeSettings.SetQRCodeLogoImage("logo.png")
# 指定した設定で BarCodeGenerator のインスタンスを作成
barCodeGenerator = BarCodeGenerator(barcodeSettings)
# バーコードの画像を生成
image = barCodeGenerator.GenerateImage()
# PNG画像をディスクに書き込む
WriteAllBytes("output/QRCode.png", image)
生成されたQRコード:
Spire.Barcode は、バーコード画像の認識を担当する BarcodeScanner クラスを提供しています。このクラスには、バーコードからデータを抽出するための複数のメソッドが用意されています:
以下のコードは、QR コード画像をスキャンする方法を示しています。
from spire.barcode import *
# ライセンスキーを適用
License.SetLicenseKey("ライセンスキー")
# 1つのバーコードを含む画像ファイルをスキャン
result = BarcodeScanner.ScanOneFile("output/QRCode.png")
# 複数のバーコードを含む画像ファイルをスキャン
# results = BarcodeScanner.ScanFile("output/Image.png")
# 結果を出力
print(result)
スキャンの結果:
Spire.Barcode for Python のすべての機能を体験したい場合は、弊社このメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。までご連絡のうえ、30 日間有効な一時ライセンスをお申し込みください。