1. Productos
  2.   Aspose.BarCode
  3.   Aspose.BarCode FOSS for Python

Aspose.BarCode FOSS for Python

Biblioteca de código abierto Python para generar códigos de barras 1D y 2D compatibles con los estándares. Licencia MIT, puro Python, genera SVG y PNG.

Biblioteca de Python para la generación de código bar

Aspose.BarCode FOSS para Python es una biblioteca gratuita y de código abierto para generar códigos de barras compatibles con los estándares en puro Python. Instálala con pip install aspose-barcode-foss y comienza a crear códigos de barras Code 128, Code 39, EAN-13, EAN-8, QR Code, UPC-A y UPC-E. Cada código de barras se renderiza directamente a SVG o PNG sin dependencias nativas.

La biblioteca expone una función de alto nivel generate() y ayudantes por simbología como barcode.code128(), barcode.qr() y barcode.ean13(). Cada llamada devuelve un objeto Barcode con los métodos .to_svg() y .to_png() para salida inmediata. Las opciones de renderizado, incluyendo escala, DPI, dimensiones del módulo, colores, zona silenciosa y visibilidad del texto legible por humanos, se controlan a través de RenderOptions.

Debido a que la biblioteca es puro Python sin dependencias nativas de Office o de imágenes, se ejecuta idénticamente en Windows, Linux y macOS, incluidos contenedores Docker y ejecutores CI. El código fuente tiene licencia MIT y está alojado en GitHub. Para funciones empresariales y soporte, consulte Aspose.BarCode for Python — Enterprise Product.

Barcode de generación

  • Siete simbologías: Code 128, Code 39, EAN-13, EAN-8, QR Code, UPC-A y UPC-E.
  • De alto nivel API: Llama a barcode.generate("code128", "data") para crear cualquier código de barras compatible por nombre.
  • Ayudantes dedicados: Usa barcode.code128(), barcode.qr(), barcode.ean13(), barcode.ean8(), barcode.upca() y barcode.upce() para generación segura de tipos.
  • Opciones de codificación: Controla el modo de codificación, los dígitos de control, el nivel de corrección de errores y GS1 mediante Code128Options, Code39Options, QrOptions y clases de opciones específicas de simbología.
  • Dígitos de control automáticos: EAN-13, EAN-8, UPC-A y UPC-E calculan los dígitos de control automáticamente a partir de la cadena de datos.

Dónde Aspose.BarCode FOSS puede usarse

  • ** Etiquetado de producto:** Generar los códigos de barras EAN-13 y UPC-A para el envasado al por menor.
  • Gestión de inventario: Crea código 128 etiquetas para los flujos de trabajo de almacenamiento y logística.
  • Campanías de código QR: Produce códigos QR para materiales de marketing, boletos de eventos y enlaces móviles.
  • Enviado y logística: Generar código 39 y código 128 para etiquetas de seguimiento de envío.

Rendering y salida

  • Salida SVG: Llame a barcode.to_svg() para obtener una cadena SVG conforme a los estándares.
  • Salida PNG: Llame a barcode.to_png() para obtener los bytes de la imagen PNG.
  • RenderOptions: Controle scale, dpi, module_width, module_height, quiet_zone, foreground_color, background_color, transparent_background, show_text, font_family y font_size.
  • Texto legible: Implementaciones específicas de simbología TextLayoutPolicy manejan la colocación del texto debajo de cada tipo de código de barras.
  • Arquitectura del renderizador: PngRenderer y SvgRenderer implementan la interfaz Renderer para una salida extensible.

Experiencia de desarrollador

Aspose.BarCode FOSS se puede instalar con pip install aspose-barcode-foss. No hay bibliotecas nativas ni paquetes del sistema que instalar. La biblioteca requiere Python 3.12 o posterior.

El API está construido sobre Barcode, EncodeOptions, RenderOptions y SymbologyRegistry, cubriendo todo el pipeline de generación a renderizado. Cada simbología está definida por un SymbologyDefinition que agrupa un analizador, codificador, perfil y política de diseño de texto. El código fuente tiene licencia MIT, está alojado en GitHub y acepta contribuciones.

Configuración de Symbology

  • Code 128 modos: Seleccione AUTO, CODE_A, CODE_B, CODE_C, o modos de conjunto mixto a través de Code128EncodeMode.
  • Code 39 modos: Elija BASE o FULL_ASCII codificación con dígito de control opcional a través de Code39Options.
  • QR opciones: Establezca error_correction_level (L, M, Q, H), version, mask, y encoding_mode (AUTO, NUMERIC, ALPHANUMERIC, BYTE, KANJI) a través de QrOptions.
  • Sistema de registro: SymbologyRegistry almacena todas las definiciones y resuelve las simbologías por nombre canónico o alias.
  • Metadatos del perfil: El SymbologyProfile de cada simbología proporciona valores predeterminados, capacidades, referencias de especificación y limitaciones conocidas.

El trato erróneo

  • Typed exceptions: BarcodeError es la base, con EncodingError, RenderingError, InvalidInputError, SymbologyNotFoundError, UnsupportedFeatureError y UnsupportedCapabilityError.
  • Input validation: Cada InputParser valida los datos antes de la codificación, capturando caracteres inválidos y violaciones de formato temprano.
  • Capability checks: Las características no compatibles (p. ej., entrada binaria para Code 39) generan UnsupportedCapabilityError con un mensaje descriptivo.

Crea un código de barcode 128

Crea un código de barras 128 con la función de alto nivel generate() y lo entregue a SVG.

import aspose_barcode_foss as barcode
bc = barcode.generate("code128", "Hello World")
svg_string = bc.to_svg()
print(svg_string[:80])

Crea un código QR con opciones personalizadas

Generar un código QR con corrección de error específico y render a bajos PNG.

import aspose_barcode_foss as barcode
from aspose_barcode_foss import QrOptions, QrErrorCorrectionLevel
bc = barcode.qr("https://example.com", options=QrOptions(
    error_correction_level=QrErrorCorrectionLevel.H
))
png_bytes = bc.to_png()
with open("qr.png", "wb") as f:
    f.write(png_bytes)

Render con apariencia personalizada

Utilice RenderOptions para controlar la escala, los colores y la zona tranquila de cualquier código de barras.

import aspose_barcode_foss as barcode
from aspose_barcode_foss import RenderOptions
bc = barcode.ean13("590123412345")
svg = bc.to_svg(options=RenderOptions(
    scale=2.0,
    foreground_color="#003366",
    quiet_zone=10.0,
    show_text=True
))

Preguntas frecuentes

¿Qué licencia hace Aspose.BarCode FOSS para el uso de Python?

La biblioteca se libera bajo la Licencia MIT. Puede utilizar, modificar y redistribuirlo en proyectos de código abierto y comercial sin royalties.

¿Qué símbolos de código de barras se apoyan?

La biblioteca apoya siete símbolos: Código 128, Códigos 39, EAN-13, Ean-8, QR Code, UPC-A y U PC-E.

¿Qué formatos de salida están disponibles?

Los códigos de barras se renden a SVG a través de to_svg() y PNG a partir deto_png(). El método to_pdf() existe en la API pero aumenta No ImplementadoError en el lanzamiento actual.

¿Cómo puedo instalar Aspose.BarCode FOSS para Python?

Ejecute pip install aspose-barcode-foss. La biblioteca requiere Python 3.12 o posterior. Es puro Python sin dependencias nativas.

¿Puedo controlar la apariencia visual del código de barras?

Si. Pasar un objeto RenderOptions a to_svg() o to_png() para controlar la escala, el DPI, las dimensiones de los módulos, los colores, la zona tranquila y el texto que se puede leer por humanos.

¿Qué versiones de Python se apoyan?

Aspose.BarCode FOSS requiere Python 3.12 o más tarde. es puro Pythón con ninguna dependencia nativa o C-extension.

¿Puedo generar códigos de bar en batch?

Sí. Crea una única instancia de BarcodeService y llama a generate() en un bucle para cada valor de datos. Cada llamada devuelve un objeto Barcode que renderizas independientemente con to_svg() o to_png().

¿Cómo configurar las opciones de codificación per-symbology?

Pase un objeto de opciones específico de simbología (p. ej. Code128Options, QrOptions, Ean13Options) como el parámetro encode a BarcodeService.generate(). Cada clase de opciones expone propiedades específicas de esa simbología, como encode_mode para Code 128 o error_correction_level para QR Code.

  

Recursos de soporte y aprendizaje

 Español