Domande frequenti

Domande frequenti

Licenze & Open Source

Quale licenza utilizza Aspose.BarCode FOSS per Python?

Aspose.BarCode FOSS per Python è rilasciato sotto la MIT License. Il testo completo della licenza è incluso nel file LICENSE distribuito con il pacchetto. Sei libero di usare, modificare e ridistribuire la libreria sia in progetti open-source che proprietari.

Posso usare Aspose.BarCode FOSS in prodotti commerciali?

Sì. La MIT License consente l’uso commerciale senza royalty o requisiti di attribuzione, oltre all’inclusione dell’avviso di licenza originale. Non è necessario rendere open source la tua applicazione.


Installazione & Requisiti

Come installare Aspose.BarCode FOSS per Python?

Installa con il comando seguente:

git clone https://github.com/aspose-barcode-foss/Aspose.BarCode-FOSS-for-Python.git
cd Aspose.BarCode-FOSS-for-Python
pip install -e .

La libreria richiede Python 3.12 o versione successiva.

Sono necessarie dipendenze native o pacchetti di sistema?

No. Aspose.BarCode FOSS per Python è un pacchetto pure-Python. Non ha estensioni native, nessuna dipendenza C e nessun pacchetto a livello di sistema da installare. Funziona su Windows, macOS e Linux — comprese le immagini Docker leggere come python:3.12-slim.


Supporto alle simbologie

Quali simbologie di codici a barre sono supportate?

La libreria supporta sette simbologie:

SymbologyTipoClasse Options
Code 1281DCode128Options
Code 391DCode39Options
EAN-131DEan13Options
EAN-81DEan8Options
QR Code2DQrOptions
UPC-A1DUpcaOptions
UPC-E1DUpceOptions

Ogni simbologia ha una funzione di supporto dedicata (code128(), code39(), ean13(), ean8(), qr(), upca(), upce()) e una funzione generica generate() che accetta una stringa con il nome della simbologia.

Quali formati di output sono disponibili?

La libreria genera i codici a barre in SVG e PNG:

  • to_svg() — restituisce una stringa SVG
  • to_png() — restituisce byte PNG

Entrambi i metodi accettano un parametro opzionale RenderOptions per controllare scala, DPI, colori, zona silenziosa e testo leggibile dall’uomo.


API Usage

Come genero un codice a barre?

Usa una funzione di supporto per simbologia:

import aspose_barcode_foss as barcode

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

with open("barcode.svg", "w") as f:
    f.write(svg)

Oppure utilizza la funzione generica generate():

bc = barcode.generate("qr", "https://example.com")

Come posso configurare le opzioni di codifica?

Ogni simbologia dispone di una classe di opzioni dedicata. Passala come parametro encode:

from aspose_barcode_foss import QrOptions, QrErrorCorrectionLevel

bc = barcode.qr(
    "https://example.com",
    encode=QrOptions(error_correction_level=QrErrorCorrectionLevel.H),
)

Come posso controllare l’aspetto visivo del barcode?

Usa RenderOptions con to_svg() o to_png():

from aspose_barcode_foss import RenderOptions

bc = barcode.code128("DATA")
png = bc.to_png(options=RenderOptions(
    scale=3.0,
    dpi=300,
    foreground_color="#003366",
    show_text=True,
))

Proprietà disponibili: scale, dpi, module_width, module_height, quiet_zone, foreground_color, background_color, transparent_background, show_text, font_family, font_size.

Come gestisce la libreria le cifre di controllo per i barcode EAN e UPC?

Per impostazione predefinita, la libreria calcola automaticamente la cifra di controllo. Fornisci solo le cifre del payload (12 per EAN-13, 7 per EAN-8, 11 per UPC-A):

bc = barcode.ean13("590123412345")  # 12 digits — check digit computed

Per fornire una cifra di controllo pre-calcolata, imposta allow_check_digit_input=True:

from aspose_barcode_foss import Ean13Options

bc = barcode.ean13(
    "5901234123457",  # 13 digits with check digit
    encode=Ean13Options(allow_check_digit_input=True),
)

Limitazioni note

L’output PDF è supportato?

No. Il metodo to_pdf() e la classe PdfRenderer esistono nella superficie API ma sollevano NotImplementedError. Usa to_svg() o to_png() invece. L’output SVG può essere incorporato nei documenti PDF mediante strumenti esterni.

Sono supportati gli standard ECI e GS1?

Non ancora. Le classi EciHelper e Gs1Helper hanno stub di metodo che sollevano NotImplementedError. Le proprietà eci_assignment_number e gs1_enabled su EncodeOptions sono presenti ma non funzionanti nella versione attuale.

La libreria può leggere o scansionare i codici a barre?

No. Aspose.BarCode FOSS per Python è una libreria solo per la generazione. Crea codici a barre a partire dai dati, ma non include il riconoscimento o la scansione di questi.

Vedi anche

 Italiano