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

Aspose.BarCode FOSS para Python

Biblioteca Python de código aberto para gerar códigos de barras 1D e 2D compatíveis com padrões. MIT licenciado, puro Python, renderiza em SVG e PNG.

Biblioteca Python de código aberto para geração de códigos de barras

Aspose.BarCode FOSS for Python é uma biblioteca gratuita e de código aberto para gerar códigos de barras compatíveis com padrões em Python puro. Instale-o com pip install aspose-barcode-foss e comece a criar Código 128, Códio 39, EAN-13, E AN-8, QR Code, UPC-A e U PC-E. Cada código de barra rendere diretamente ao SVG ou PNG sem dependências nativas.

A biblioteca expõe uma função generate() de alto nível e auxiliares por simbologia, como barcode.code128() , barcode.qr() e barcode.ean13(). Cada chamada retorna um objeto Barcode com métodos .to_svg() e.to_png() para saída imediata. Opções de renderização incluindo escala, DPI, módulo dimensões, cores, zona silenciosa e visibilidade de texto legível pelo ser humano são controladas através do { place holders 8 ].

Como a biblioteca é pura Python sem dependências nativas do Office ou de imagem, ela funciona idênticamente no Windows, Linux e macOS, incluindo contêineres Docker e corredores CI. A base de código está licenciada pelo MIT e hospedada no GitHub .

Geração de códigos de barras

  • Sete simbologias: Código 128, Códigos 39, EAN-13, E AN-8, QR Code, UPC-A e U PC-E.
  • ** API de alto nível:** Chame barcode.generate("code128", "data") para criar qualquer código de barras suportado pelo nome.
  • ** Auxiliares dedicados:** Utilize barcode.code128(), barcode.qr() , barcode.ean13(),barcode.ean8() e { PLASSEHOLODER 06} para geração segura de tipo.
  • ** Opções de codificação:** Modo de código de controle, dígitos de verificação, nível de correção de erros e GS1 através das classes Code128Options, Code39Options,QrOptions e opções específicas da simbologia.
  • Digitos de verificação automática: O EAN-13, o EON-8, o UPC-A e oUPC‐E computarão os dígitos da veridade automaticamente a partir da cadeia de dados.

Onde o código de barras FOSS pode ser usado

  • Rótulos do produto: Gerar códigos de barras EAN-13 e UPC-A para embalagens a retalho.
  • Gestão de inventário: Criar etiquetas com código 128 para fluxos de trabalho em armazém e logística.
  • ** Campanhas de códigos QR:** Produzir código QR para materiais de marketing, ingressos para eventos e links móveis.
  • Envio e logística: Gerar códigos de barras Código 39 e 128 para etiquetas de rastreamento das remessas.

Rendering e produção

  • SVG saída: Chama barcode.to_svg() para obter uma cadeia SVG compatível com padrões.
  • Pulso PNG: Chame barcode.to_png() para obter bytes de imagem PNG.
  • RenderOptions: Controle scale, dpi , module_width,module_height,, { PLASSEHOLODER 06}., {PLASSeHOLEDER07},. background_color. transparent_background.. show_text e font_size.
  • Texto legível para o ser humano: Implementações TextLayoutPolicy específicas de simbologia tratam da colocação do texto abaixo de cada tipo de código-barras.
  • ** Arquitetura do renderizador:** PngRenderer e SvgRenderer implementam a interface Renderer para saída extensivel.

Experiência de desenvolvedor

Aspose.BarCode FOSS é instalado com pip install aspose-barcode-foss. Não há bibliotecas nativas ou pacotes de sistema para instalar. A biblioteca requer Python 3.12 ou posterior.

A API é construída em torno de Barcode, EncodeOptions e SymbologyRegistry , cobrindo a geração completa do pipeline para render. Cada simbologia é definida por um { Place Holder 5 ] que agrupa uma política de análise, codificação, perfil e layout de texto. O código base é licenciado pelo MIT, hospedado no GitHub e aceita contribuições.

Configuração da simbologia

  • Modos de código 128: Selecione AUTO, CODE_A , CODE_B,CODE_C ou modos com conjuntos mistos através do Code128EncodeMode.
  • Modos de código 39: Escolha a codificação BASE ou FULL_ASCII com dígito opcional via Code39Options.
  • ** Opções QR:** Defina error_correction_level (L, M, Q, H), version, mask e encoding_mode [AUTO, NUMÉRICO, ALFANOMÉRO, BYTE, KANJI] através de QrOptions.
  • ** Sistema de registo:** SymbologyRegistry armazena todas as definições e resolve simbologias por nome canônico ou alias.
  • ** Metadados de perfil:** Cada simbologia SymbologyProfile fornece padrões, capacidades, referências de especificações e limitações conhecidas.

Tratamento de erros

  • Exceções tipadas: BarcodeError é a base, com EncodingError, RenderingError , InvalidInputError e SymbologyNotFoundError.
  • Validação de entrada: Cada InputParser valida dados antes da codificação, capturando caracteres inválidos e violações do formato precocemente.
  • Verificações de capacidade: Características não suportadas (por exemplo, entrada binária para o código 39) suscitam UnsupportedCapabilityError com uma mensagem descritiva.

Gerar um código de barras 128

Criar um código de barras 128 com a função generate() de alto nível e renderizar para SVG.

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

Criar um código QR com opções personalizadas

Gerar um código QR com correção de erro específica e renderizar em bytes 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 com aparência personalizada

Use RenderOptions para controlar escala, cores e zona silenciosa de qualquer 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
))
  

Recursos de Suporte e Aprendizado

 Português