Preguntas frecuentes

Preguntas frecuentes

Licencias y código abierto

¿Qué licencia utiliza Aspose.BarCode FOSS para Python?

Aspose.BarCode FOSS para Python se publica bajo la MIT License. El texto completo de la licencia está incluido en el archivo LICENSE distribuido con el paquete. Usted es libre de usar, modificar y redistribuir la biblioteca tanto en proyectos de código abierto como propietarios.

¿Puedo usar Aspose.BarCode FOSS en productos comerciales?

Sí. La MIT License permite el uso comercial sin regalías ni requisitos de atribución más allá de incluir el aviso de licencia original. No necesita abrir el código fuente de su aplicación.


Instalación y requisitos

¿Cómo instalo Aspose.BarCode FOSS para Python?

Instálalo con el comando a continuación:

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

La biblioteca requiere Python 3.12 o posterior.

¿Hay dependencias nativas o paquetes del sistema requeridos?

No. Aspose.BarCode FOSS para Python es un paquete pure-Python. No tiene extensiones nativas, no tiene dependencias C y no requiere paquetes a nivel del sistema para instalar. Funciona en Windows, macOS y Linux — incluidas imágenes Docker ligeras como python:3.12-slim.


Compatibilidad de simbología

¿Qué simbologías de códigos de barras son compatibles?

La biblioteca admite siete simbologías:

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

Cada simbología tiene una función auxiliar dedicada (code128(), code39(), ean13(), ean8(), qr(), upca(), upce()) y una función genérica generate() que acepta una cadena con el nombre de la simbología.

¿Qué formatos de salida están disponibles?

La biblioteca genera códigos de barras a SVG y PNG:

  • to_svg() — devuelve una cadena SVG
  • to_png() — devuelve bytes PNG

Ambos métodos aceptan un parámetro opcional RenderOptions para controlar la escala, DPI, colores, zona silenciosa y texto legible por humanos.


API Usage

¿Cómo genero un código de barras?

Utilice una función auxiliar por simbología:

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)

O utilice la función genérica generate():

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

¿Cómo configuro las opciones de codificación?

Cada simbología tiene una clase de opciones dedicada. Pásela como el parámetro encode:

from aspose_barcode_foss import QrOptions, QrErrorCorrectionLevel

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

¿Cómo controlo la apariencia visual del código de barras?

Utilice 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,
))

Propiedades disponibles: scale, dpi, module_width, module_height, quiet_zone, foreground_color, background_color, transparent_background, show_text, font_family, font_size.

¿Cómo gestiona la biblioteca los dígitos de control para los códigos de barras EAN y UPC?

Por defecto, la biblioteca calcula el dígito de control automáticamente. Proporcione solo los dígitos de la carga útil (12 para EAN-13, 7 para EAN-8, 11 para UPC-A):

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

Para proporcionar un dígito de control precomputado, establezca 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),
)

Limitaciones conocidas

¿Se admite la salida PDF?

No. El método to_pdf() y la clase PdfRenderer existen en la superficie API pero generan NotImplementedError. Use to_svg() o to_png() en su lugar. La salida SVG puede incrustarse en documentos PDF mediante herramientas externas.

¿Se admiten los estándares ECI y GS1?

Aún no. Las clases EciHelper y Gs1Helper tienen esqueletos de método que generan NotImplementedError. Las propiedades eci_assignment_number y gs1_enabled en EncodeOptions están presentes pero no funcionan en la versión actual.

¿Puede la biblioteca leer o escanear códigos de barras?

No. Aspose.BarCode FOSS para Python es una biblioteca solo de generación. Crea códigos de barras a partir de datos pero no incluye reconocimiento de códigos de barras ni capacidades de escaneo.

Ver también

 Español