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:

ExceptionGdy podniesiono
InvalidInputErrorDane zawierają znaki nieobsługiwane przez symbology
EncodingErrorKodowanie nie powiodło się (np. dane przekraczają pojemność symbology)
SymbologyNotFoundErrorNie 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

SymbologyTypKlasa OpcjiKluczowe właściwości
Code 1281DCode128Optionsencode_mode
Code 391DCode39Optionsfull_ascii, add_check_digit
EAN-131DEan13Optionsallow_check_digit_input
EAN-81DEan8Optionsallow_check_digit_input
QR Code2DQrOptionserror_correction_level, encoding_mode, version, mask
UPC-A1DUpcaOptionsallow_check_digit_input
UPC-E1DUpceOptionsallow_check_digit_input

Formaty wyjściowe: SVG i PNG.


Kolejne kroki

Zobacz także

 Polski