Jak generować kody kreskowe przy użyciu Aspose.BarCode FOSS

Jak generować kody kreskowe przy użyciu Aspose.BarCode FOSS

Problem

Generuj kody kreskowe 1D i 2D z ciągów danych przy użyciu Aspose.BarCode FOSS dla Python. Biblioteka udostępnia funkcje pomocnicze dla poszczególnych symboli (code128(), qr(), ean13(), itp.) oraz ogólną funkcję generate(), która przyjmuje nazwę symbolu jako ciąg znaków.

import aspose_barcode_foss as barcode

bc = barcode.code128("Hello World")
svg = bc.to_svg()

Wymagania wstępne

  • Python 3.12 lub nowszy
  • menedżer pakietów pip
  • aspose-barcode-foss zbudowany ze źródeł

Używanie pomocników per-symbologii

Każda obsługiwana symbologia ma dedykowaną funkcję pomocniczą, która zwraca obiekt Barcode. Pomocnik sprawdza poprawność danych wejściowych i automatycznie wybiera właściwy enkoder.

import aspose_barcode_foss as barcode

# 1D barcodes
bc_128 = barcode.code128("ABC-123")
bc_39 = barcode.code39("HELLO")
bc_ean13 = barcode.ean13("590123412345")
bc_ean8 = barcode.ean8("1234567")
bc_upca = barcode.upca("01234567890")
bc_upce = barcode.upce("012345")

# 2D barcode
bc_qr = barcode.qr("https://example.com")

Używanie ogólnej funkcji generującej

Funkcja generate() przyjmuje jako pierwszy argument ciąg znaków określający nazwę symbologii. Jest to przydatne, gdy symbologia jest określana w czasie wykonywania.

import aspose_barcode_foss as barcode

bc = barcode.generate("code128", "Dynamic data")
svg = bc.to_svg()

# Also works with other symbology names
bc_qr = barcode.generate("qr", "https://example.com")
bc_ean = barcode.generate("ean13", "590123412345")

Łączenie generowania z opcjami kodowania

Przekaż parametr encode, aby kontrolować opcje specyficzne dla symbologii podczas generacji.

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.Q),
)
svg = bc.to_svg()

Odczytywanie zakodowanego symbolu

Obiekt Barcode udostępnia właściwość symbol typu EncodedSymbol, która zawiera matrix (a ModuleMatrix z siatką modułów) oraz metadata (a SymbolMetadata z nazwą symbologii, tekstem wyświetlanym i znormalizowanymi danymi).

import aspose_barcode_foss as barcode

bc = barcode.code128("Test")
symbol = bc.symbol

# Access the module matrix
print(f"Width: {symbol.matrix.width}")
print(f"Height: {symbol.matrix.height}")

# Access symbol metadata
print(f"Symbology: {symbol.metadata.symbology}")
print(f"Display text: {symbol.metadata.display_text}")

Zapisywanie wyniku

Po wygenerowaniu Barcode wywołaj to_svg(), aby uzyskać ciąg SVG lub to_png(), aby uzyskać bajty PNG. Zapisz wynik do pliku.

import aspose_barcode_foss as barcode

bc = barcode.code128("SAVE-ME")

# Save as SVG
with open("barcode.svg", "w") as f:
    f.write(bc.to_svg())

# Save as PNG
with open("barcode.png", "wb") as f:
    f.write(bc.to_png())

Obsługiwane symbologie

SymbologyTypFunkcja pomocniczaKlasa Opcji
Code 1281Dcode128()Code128Options
Code 391Dcode39()Code39Options
EAN-131Dean13()Ean13Options
EAN-81Dean8()Ean8Options
QR Code2Dqr()QrOptions
UPC-A1Dupca()UpcaOptions
UPC-E1Dupce()UpceOptions

Zobacz także

 Polski