Come generare codici a barre con Aspose.BarCode FOSS

Come generare codici a barre con Aspose.BarCode FOSS

Problem

Genera codici a barre 1D e 2D da stringhe di dati usando Aspose.BarCode FOSS per Python. La libreria fornisce funzioni di supporto per simbologia (code128(), qr(), ean13(), ecc.) e una funzione generica generate() che accetta una stringa con il nome della simbologia.

import aspose_barcode_foss as barcode

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

Prerequisiti

  • Python 3.12 o versioni successive
  • gestore di pacchetti pip
  • aspose-barcode-foss compilato da sorgente

Utilizzo di helper per simbologia specifica

Ogni simbologia supportata ha una funzione helper dedicata che restituisce un oggetto Barcode. L’helper convalida l’input e seleziona automaticamente il codificatore corretto.

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")

Utilizzo della funzione generica Generate

La funzione generate() accetta una stringa con il nome della simbologia come primo argomento. Questo è utile quando la simbologia viene determinata a runtime.

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")

Combinare la generazione con le opzioni di codifica

Passa un parametro encode per controllare le opzioni specifiche della simbologia durante la generazione.

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()

Lettura del simbolo codificato

L’oggetto Barcode espone una proprietà symbol di tipo EncodedSymbol, che contiene il matrix (un ModuleMatrix con la griglia dei moduli) e il metadata (un SymbolMetadata con il nome della simbologia, il testo visualizzato e i dati normalizzati).

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}")

Salvataggio dell’Output

Dopo aver generato un Barcode, chiama to_svg() per una stringa SVG o to_png() per byte PNG. Scrivi il risultato in un file.

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())

Simboli supportati

SymbologyTipoFunzione di supportoClasse Opzioni
Code 1281Dcode128()Code128Options
Code 391Dcode39()Code39Options
EAN-131Dean13()Ean13Options
EAN-81Dean8()Ean8Options
QR Code2Dqr()QrOptions
UPC-A1Dupca()UpcaOptions
UPC-E1Dupce()UpceOptions

Vedi anche

 Italiano