はじめに
リリースしています Aspose.BarCode Python 用の FOSS、標準準拠の 1D および 2D バーコードを生成する pure-Python ライブラリです。ソースは以下で入手可能です GitHub as aspose-barcode-foss、MIT ライセンスで提供され、外部依存はゼロです。
このライブラリは7つのシンボロジーをサポートしています: Code 128, Code 39, EAN-13, EAN-8, QR Code, UPC-A, および UPC-E。各バーコードは直接 SVG または PNG にレンダリングされます。ネイティブ拡張やインストールが必要なシステムパッケージ、グラフィックドライバは不要です — Windows、Linux、macOS でソースからビルドできます。
主な機能
ハイレベル生成 API
トップレベルの generate() 関数はシンボロジー名とデータ文字列を受け取り、Barcode オブジェクトを返します。各シンボロジー専用のヘルパー — code128(), code39(), ean13(), ean8(), qr(), upca(), および upce() — がそれぞれのフォーマットに対して型安全なエントリーポイントを提供します。
import aspose_barcode_foss as barcode
bc = barcode.generate("code128", "ABC123")
svg = bc.to_svg()
シンボロジー固有のエンコードオプション
各シンボロジーはエンコード動作を制御するオプションクラスを受け入れます。Code128Options は encode_mode を提供します (AUTO, CODE_A, CODE_B, CODE_C, CODE_AB, CODE_AC, CODE_BC)。Code39Options は BASE と FULL_ASCII モードをサポートします。QrOptions は error_correction_level (L, M, Q, H)、version、mask、および encoding_mode (AUTO, NUMERIC, ALPHANUMERIC, BYTE, KANJI) を公開します。
import aspose_barcode_foss as barcode
from aspose_barcode_foss import QrOptions, QrErrorCorrectionLevel
bc = barcode.qr(
"https://example.com",
encode=QrOptions(error_correction_level=QrErrorCorrectionLevel.H),
)
png_bytes = bc.to_png()
レンダリングコントロール
RenderOptions は視覚的出力を制御します: scale、dpi、module_width、module_height、quiet_zone、foreground_color、background_color、transparent_background、show_text、font_family、および font_size。to_svg() と to_png() の両方はオプションの RenderOptions パラメータを受け取ります。
import aspose_barcode_foss as barcode
from aspose_barcode_foss import RenderOptions
bc = barcode.ean13("590123412345")
svg = bc.to_svg(options=RenderOptions(
scale=2.0,
foreground_color="#003366",
quiet_zone=10.0,
show_text=True,
))
自動チェックディジット
EAN-13、EAN-8、UPC-A、および UPC-E はデータ文字列からチェックディジットを自動的に計算します。ペイロードの数字だけを提供すれば、ライブラリがエンコード時に正しいチェックディジットを付加します。
入力検証
各シンボロジーにはエンコード前にデータを検証する専用の InputParser があります。無効な文字、長さの不正、フォーマット違反は、型付き例外 InvalidInputError、EncodingError、SymbologyNotFoundError、UnsupportedCapabilityError によって早期に検出されます—すべて BarcodeError から継承しています。
クイックスタート
git clone https://github.com/aspose-barcode-foss/Aspose.BarCode-FOSS-for-Python.git
cd Aspose.BarCode-FOSS-for-Python
pip install -e .Code 128 バーコードを生成し、SVG をファイルに書き込む:
import aspose_barcode_foss as barcode
from aspose_barcode_foss import RenderOptions
bc = barcode.code128("Hello World")
svg = bc.to_svg(options=RenderOptions(show_text=True))
with open("barcode.svg", "w") as f:
f.write(svg)
QR code を生成し、PNG として保存する:
import aspose_barcode_foss as barcode
from aspose_barcode_foss import QrOptions, QrErrorCorrectionLevel
bc = barcode.qr(
"https://example.com",
encode=QrOptions(error_correction_level=QrErrorCorrectionLevel.H),
)
with open("qr.png", "wb") as f:
f.write(bc.to_png())
このライブラリは Python 3.12 以降が必要です。
サポートされている形式
| Symbology | 型 | チェックディジット | オプションクラス |
|---|---|---|---|
| Code 128 | 1D | 組み込み | Code128Options |
| Code 39 | 1D | Optional | Code39Options |
| EAN-13 | 1D | Automatic | Ean13Options |
| EAN-8 | 1D | Automatic | Ean8Options |
| QR Code | 2D | 組み込み | QrOptions |
| UPC-A | 1D | Automatic | UpcaOptions |
| UPC-E | 1D | Automatic | UpceOptions |
出力形式:
| フォーマット | 拡張 | Export |
|---|---|---|
| SVG | .svg | ✓ |
| PNG | .png | ✓ |
オープンソースとライセンス
このライブラリは MIT ライセンスです。商用アプリケーションでの利用、変更、再配布が制限なく可能です。ソースは GitHub で入手できます。利用階層やトークン上限、テレメトリはありません。すべての処理はローカルで行われます。