Guida rapida
Quickstart — Aspose.BarCode FOSS per Python
Questa guida spiega come generare codici a barre usando le tre simbologie più comuni: Code 128, QR Code e EAN-13. Ogni esempio dimostra i concetti di alto livello API, le opzioni di codifica per simbologia e i controlli di rendering.
Genera un codice a barre Code 128
Code 128 è una simbologia 1D a lunghezza variabile utilizzata nella logistica e nella spedizione. L’assistente code128() accetta una stringa di dati e un Code128Options opzionale:
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 è ottimizzato per dati solo numerici — codifica coppie di cifre come singoli punti di codice, producendo un codice a barre più corto.
Genera un QR Code
QR Code è una simbologia 2D che supporta la correzione degli errori e più modalità di codifica. QrOptions controlla il livello di correzione degli errori, la modalità di codifica, la versione e il modello di maschera:
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())Livelli di correzione degli errori: L (recupero 7%), M (15%), Q (25%), H (30%).
Genera un codice a barre EAN-13
EAN-13 è una simbologia 1D a lunghezza fissa usata nel commercio al dettaglio. Fornisci 12 cifre di carico — la libreria calcola automaticamente la 13ª cifra di controllo:
import aspose_barcode_foss as barcode
bc = barcode.ean13("590123412345")
svg = bc.to_svg()
with open("ean13.svg", "w") as f:
f.write(svg)Per fornire la tua cifra di controllo pre-calcolata (13 cifre in totale), imposta allow_check_digit_input=True:
from aspose_barcode_foss import Ean13Options
bc = barcode.ean13(
"5901234123457",
encode=Ean13Options(allow_check_digit_input=True),
)Personalizza il rendering
RenderOptions si applica a tutte le simbologie e controlla l’output visivo. Passalo a to_svg() o 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)Proprietà disponibili: scale, dpi, module_width, module_height, quiet_zone, foreground_color, background_color, transparent_background, show_text, font_family, font_size.
Usa il generico generate() API
La funzione generate() accetta una stringa di nome della simbologia invece di chiamare un helper dedicato:
import aspose_barcode_foss as barcode
bc = barcode.generate("code128", "ABC123")
svg = bc.to_svg()Nomi di simbologia validi: "code128", "code39", "ean13", "ean8", "qr", "upca", "upce".
Gestione degli errori
Tutta la convalida avviene prima della codifica. Se vengono forniti dati non validi o opzioni incompatibili, la libreria solleva un’eccezione tipizzata:
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}")Gerarchia delle eccezioni:
| Exception | Quando sollevato |
|---|---|
InvalidInputError | I dati contengono caratteri non supportati dalla simbologia |
EncodingError | Codifica fallita (ad esempio, i dati superano la capacità della simbologia) |
SymbologyNotFoundError | Nome di simbologia non riconosciuto passato a generate() |
UnsupportedCapabilityError | Funzionalità richiesta non disponibile per questa simbologia |
Tutte le classi di eccezione ereditano da BarcodeError.
Simbologie supportate
| Symbology | Tipo | Classe Opzioni | Proprietà chiave |
|---|---|---|---|
| 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 |
Formati di output: SVG e PNG.
Prossimi passi
- Guida per sviluppatori: Opzioni di codifica Per-symbology, controlli di rendering e architettura
- Features: Panoramica completa delle funzionalità con esempi di codice
- Articoli KB: Guide pratiche e FAQ