Szybki start
Szybki start — Aspose.BarCode FOSS dla Python
Ten przewodnik przeprowadza przez generowanie kodów kreskowych przy użyciu trzech najpopularniejszych symbologii: Code 128, QR Code i EAN-13. Każdy przykład demonstruje wysokopoziomowe API, opcje kodowania per-symbologia oraz kontrolki renderowania.
Wygeneruj kod kreskowy Code 128
Code 128 jest symbologią 1D o zmiennej długości używaną w logistyce i wysyłce. Pomocnik code128() przyjmuje ciąg danych oraz opcjonalny Code128Options:
import aspose_barcode_foss as barcode
from aspose_barcode_foss import Code128Options, Code128EncodeMode
bc = barcode.code128(
"1234567890",
encode=Code128Options(encode_mode=Code128EncodeMode.CODE_C),
)
svg = bc.to_svg()
with open("code128.svg", "w") as f:
f.write(svg)Code128EncodeMode.CODE_C jest zoptymalizowany pod kątem danych wyłącznie cyfrowych — koduje pary cyfr jako pojedyncze punkty kodowe, tworząc krótszy kod kreskowy.
Wygeneruj QR Code
QR Code jest symbologią 2D wspierającą korekcję błędów i wiele trybów kodowania. QrOptions kontroluje poziom korekcji błędów, tryb kodowania, wersję i wzorzec maski:
import aspose_barcode_foss as barcode
from aspose_barcode_foss import QrOptions, QrErrorCorrectionLevel, QrEncodeMode
bc = barcode.qr(
"https://example.com/product/12345",
encode=QrOptions(
error_correction_level=QrErrorCorrectionLevel.Q,
encoding_mode=QrEncodeMode.BYTE,
),
)
with open("qr.png", "wb") as f:
f.write(bc.to_png())Poziomy korekcji błędów: L (7% odzyskiwania), M (15%), Q (25%), H (30%).
Wygeneruj kod kreskowy EAN-13
EAN-13 jest symbologią 1D o stałej długości używaną w handlu detalicznym. Podaj 12 cyfr danych — biblioteka automatycznie oblicza 13. cyfrę kontrolną:
import aspose_barcode_foss as barcode
bc = barcode.ean13("590123412345")
svg = bc.to_svg()
with open("ean13.svg", "w") as f:
f.write(svg)Aby podać własną wstępnie obliczoną cyfrę kontrolną (łącznie 13 cyfr), ustaw allow_check_digit_input=True:
from aspose_barcode_foss import Ean13Options
bc = barcode.ean13(
"5901234123457",
encode=Ean13Options(allow_check_digit_input=True),
)Dostosuj renderowanie
RenderOptions ma zastosowanie do wszystkich symbologii i kontroluje wyjście wizualne. Przekaż go do to_svg() lub to_png():
import aspose_barcode_foss as barcode
from aspose_barcode_foss import RenderOptions
bc = barcode.upca("01234567890")
png = bc.to_png(options=RenderOptions(
scale=3.0,
dpi=300,
foreground_color="#1a1a1a",
background_color="#ffffff",
show_text=True,
font_family="Courier New",
))
with open("upca.png", "wb") as f:
f.write(png)Dostępne właściwości: scale, dpi, module_width, module_height, quiet_zone, foreground_color, background_color, transparent_background, show_text, font_family, font_size.
Użyj ogólnego generate() API
Funkcja generate() przyjmuje ciąg znaków z nazwą symbologii zamiast wywoływania dedykowanego pomocnika:
import aspose_barcode_foss as barcode
bc = barcode.generate("code128", "ABC123")
svg = bc.to_svg()Poprawne nazwy symbologii: "code128", "code39", "ean13", "ean8", "qr", "upca", "upce".
Obsługa błędów
Cała walidacja odbywa się przed kodowaniem. Jeśli zostaną podane nieprawidłowe dane lub niekompatybilne opcje, biblioteka zgłasza wyjątek określonego typu:
import aspose_barcode_foss as barcode
from aspose_barcode_foss import InvalidInputError
try:
bc = barcode.ean13("ABC") # EAN-13 requires digits
except InvalidInputError as e:
print(f"Invalid input: {e}")Hierarchia wyjątków:
| Exception | Gdy podniesiono |
|---|---|
InvalidInputError | Dane zawierają znaki nieobsługiwane przez symbology |
EncodingError | Kodowanie nie powiodło się (np. dane przekraczają pojemność symbology) |
SymbologyNotFoundError | Nie rozpoznano nazwy symbology przekazanej do generate() |
UnsupportedCapabilityError | Żądana funkcja nie jest dostępna dla tej symboliki |
Wszystkie klasy wyjątków dziedziczą po BarcodeError.
Obsługiwane symbologie
| Symbology | Typ | Klasa Opcji | Kluczowe właściwości |
|---|---|---|---|
| Code 128 | 1D | Code128Options | encode_mode |
| Code 39 | 1D | Code39Options | full_ascii, add_check_digit |
| EAN-13 | 1D | Ean13Options | allow_check_digit_input |
| EAN-8 | 1D | Ean8Options | allow_check_digit_input |
| QR Code | 2D | QrOptions | error_correction_level, encoding_mode, version, mask |
| UPC-A | 1D | UpcaOptions | allow_check_digit_input |
| UPC-E | 1D | UpceOptions | allow_check_digit_input |
Formaty wyjściowe: SVG i PNG.
Kolejne kroki
- Poradnik programisty: Opcje kodowania per-symbology, kontrolki renderowania i architektura
- Features: Pełny przegląd funkcji z przykładami kodu
- Artykuły bazy wiedzy: Przewodniki krok po kroku i FAQ