Introduction
Noi eliberăm … Aspose.BarCode FOSS for Python, o bibliotecă Python pură pentru generarea de coduri de bare 1D și 2D conforme cu standardele. Biblioteca este publicată pe PyPI ca aspose-barcode-foss, poartă o licență MIT, și are zero dependențe externe.
Biblioteca suportă șapte simboluri: Codul 128, Code 39, EAN-13, EAn-8, QR Code, UPC-A și UCP-E. Fiecare cod de bare renderizează direct în SVG sau PNG. Nu există extensii native, nu sunt pachete sistem pentru a fi instalate și nu este necesar niciun driver grafic pip install aspose-barcode-foss este setarea completă pe Windows, Linux și macOS.
Caracteristici cheie
API de generare la nivel înalt
Cel mai înalt nivel. generate() funcția acceptă un nume de simbol și o șir de date, returnând o Barcode Obiect. ajutoare dedicate per-simbolic code128(), code39(), ean13(), ean8(), qr(), upca(), și upce() să asigure punctele de intrare sigure pentru fiecare format.
import aspose_barcode_foss as barcode
bc = barcode.generate("code128", "ABC123")
svg = bc.to_svg()
Opțiuni de codificare specifice simbologiei
Fiecare simbol acceptă o clasă de opțiuni care controlează comportamentul codificării. Code128Options oferă: encode_mode (AUTO, CODE_A, CODE_B, CODE_C, CODE_AB, CODE_AC, CODE_BC). Code39Options suportă modurile BASE și FULL_ASCII. QrOptions expuneri error_correction_level (L, M, Q, H), version, mask, și 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()
Controale de renderizare
RenderOptions controlează ieșirea vizuală: scale, dpi, module_width, module_height, quiet_zone, foreground_color, background_color, transparent_background, show_text, font_family, și font_size.Amândouă . to_svg() și de: to_png() acceptă o opţiune de RenderOptions parametru.
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,
))
Cifrele de verificare automată
EAN-13, E AN-8, UPC-A și U PC-E calculează cifrele de verificare automat din șirul de date. Furnizati doar cifrele de încărcare utilă; biblioteca adaugă cifra corectă de control în timpul codificării.
Validarea de intrare
Fiecare simbol are un dedicat. InputParser caracterele nevalide, lungimile incorecte și încălcările formatului sunt detectate devreme cu excepții tipărite: InvalidInputError, EncodingError, SymbologyNotFoundError, și UnsupportedCapabilityError toate moștenite de la BarcodeError.
Început rapid
pip install aspose-barcode-foss
Generați un cod de bare 128 și scrieţi SVG într-un fișier:
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)
Generați un cod QR și salvați-l ca 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())
Biblioteca necesită Python 3.12 sau mai recent.
Formatele suportate
| Symbology | Type | Verificați Digit | Clasificarea opțiunilor |
|---|---|---|---|
| Codul 128 | 1D | Încorporat în sistem | Code128Options |
| Codul 39 | 1D | Optional | Code39Options |
| EAN-13 | 1D | Automatic | Ean13Options |
| EAN-8 | 1D | Automatic | Ean8Options |
| Cod QR | 2D | Încorporat în sistem | QrOptions |
| UPC-A | 1D | Automatic | UpcaOptions |
| UPC-E | 1D | Automatic | UpceOptions |
Formatul de ieșire:
| Format | Extension | Export |
|---|---|---|
| SVG | .svg | ✓ |
| PNG | .png | ✓ |
Open Source & Licențiere
Biblioteca este licențiată de MIT. Puteți să o utilizați în aplicații comerciale, să le modificați și să redistribuiți fără restricție. Sursa este disponibilă pe WEB GitHub.Nu există nivele de utilizare, nici limite token și nu telemetrie.