IRONSOFTWAREHOME
USANDO O IRONBARCODE

Gerar códigos de barras em aplicativos Web ASP.NET Core

Curtis Chau
Curtis Chau
Updated: 27 de fevereiro de 2026

Integrar a geração de código de barras em uma aplicação web ASP.NET abre poderosas capacidades para gestão de inventário, rastreamento de produtos e automação de documentos. Este tutorial demonstra como gerar códigos de barras em um projeto .NET Core usando o IronBarcode — uma biblioteca de códigos de barras que suporta mais de 30 formatos incluindo QR Code, Data Matrix, Code 128 e UPC A.

O exemplo rápido a seguir mostra como criar um código de barras Code 128 e retorná-lo como uma imagem PNG de uma ação de controlador MVC:

using IronBarCode;
using Microsoft.AspNetCore.Mvc;

public IActionResult GenerateBarcode(string data)
{
    GeneratedBarcode barcode = BarcodeWriter.CreateBarcode(data, BarcodeWriterEncoding.Code128);
    barcode.ResizeTo(400, 120);
    barcode.AddBarcodeValueTextBelowBarcode();
    byte[] barcodeBytes = barcode.ToPngBinaryData();
    return File(barcodeBytes, "image/png");
}

Comece seu teste gratuito para seguir junto com os exemplos de código do tutorial completo abaixo.

Como Instalar uma Biblioteca de Código de Barras em um Projeto .NET Core?

Adicionar capacidades de geração de código de barras a uma aplicação web ASP.NET Core requer a instalação do pacote NuGet IronBarcode. Abra o Visual Studio e use o Console do Gerenciador de Pacotes para instalar as dependências:

PM > Install-Package BarCode

O pacote é compatível com .NET Core 6, 7, 8, 10 e versões mais recentes, bem como .NET Framework 4.6.2+. A biblioteca lida com todas as dependências automaticamente, não exigindo fontes de código de barras adicionais ou configuração do sistema. Uma vez instalado, adicione a referência de namespace ao arquivo de controlador ou serviço:

using IronBarCode;

Quais Versões e Plataformas .NET São Suportadas?

IronBarcode visa todos os tempos de execução modernos do .NET:

  • .NET 10, 9, 8, 7, 6 -- lançamentos LTS e STS totalmente suportados
  • .NET Framework 4.6.2+ -- suporte a aplicações legadas
  • Alvos de implantação -- Windows, Linux, macOS, Docker, Azure, AWS
  • Alvos móveis -- Android e iOS via .NET MAUI

Nenhuma biblioteca GD externa, codecs nativos ou instalações de fontes de código de barras são necessárias. A biblioteca é totalmente autossuficiente e resolve toda a lógica de codificação internamente.

Como Adicionar o Namespace a um Controlador?

Após instalar o pacote NuGet, faça referência ao namespace IronBarCode no início de qualquer controlador, serviço ou modelo de Página Razor onde for necessário gerar códigos de barras:

using IronBarCode;
using Microsoft.AspNetCore.Mvc;

Essa única diretiva using dá acesso a BarcodeWriter, QRCodeWriter, BarcodeReader e todos os tipos de suporte para geração e leitura de códigos de barras.

Como Gerar Códigos de Barras em uma Aplicação Web ASP.NET Core?

Criar códigos de barras em um controlador MVC envolve a classe BarcodeWriter do IronBarcode. O exemplo a seguir demonstra uma ação completa de controlador que cria um código de barras Code 128 baseado em URL ou texto fornecido por um usuário:

using IronBarCode;
using Microsoft.AspNetCore.Mvc;

public class BarcodeController : Controller
{
    public IActionResult GenerateBarcode(string data)
    {
        // Generate barcode from input data
        GeneratedBarcode barcode = BarcodeWriter.CreateBarcode(
            data,
            BarcodeWriterEncoding.Code128);
        barcode.ResizeTo(400, 120);
        barcode.AddBarcodeValueTextBelowBarcode();
        // Return as image for display in browser
        byte[] barcodeBytes = barcode.ToPngBinaryData();
        return File(barcodeBytes, "image/png");
    }
}

Imagem de Saída do Código de Barras

Geração de Código de Barras ASP .NET: Construa um Gerador de Código de Barras para sua Aplicação Web: Imagem 1 - Código de Barras Gerado

O método BarcodeWriter.CreateBarcode() aceita dados do código de barras como o primeiro parâmetro e o formato de codificação como o segundo. Essa abordagem cria códigos de barras dinamicamente com base na entrada do usuário ou valores de banco de dados.

Para salvar imagens de códigos de barras numa pasta do projeto, use o método SaveAsImage():

barcode.SaveAsImage("wwwroot/images/generated-barcode.png");

A biblioteca suporta vários formatos de saída, incluindo PNG, GIF, BMP, SVG e JPEG. Você também pode exportar códigos de barras como HTML para incorporação direta em páginas web.

Como Retornar um Código de Barras como Download de Arquivo?

Para retornar o código de barras como um arquivo para download em vez de uma imagem embutida, defina o cabeçalho Content-Disposition na resposta:

public IActionResult DownloadBarcode(string data)
{
    GeneratedBarcode barcode = BarcodeWriter.CreateBarcode(data, BarcodeWriterEncoding.Code128);
    barcode.ResizeTo(400, 120);
    byte[] pdfBytes = barcode.ToPdfBinaryData();
    return File(pdfBytes, "application/pdf", "barcode.pdf");
}

Esse padrão é útil para geração de etiquetas de envio, fluxos de trabalho de rotulagem de produtos e qualquer cenário onde o usuário final precise salvar ou imprimir um documento de código de barras diretamente.

Quais Tipos de Código de Barras São Suportados para Aplicações Web?

O IronBarcode suporta mais de 30 formatos. Aqui estão os detalhes sobre como criar os tipos mais comumente usados:

Geração de código QR

// Create QR Code with custom size
GeneratedBarcode qrCode = QRCodeWriter.CreateQrCode(
    "https://example.com/product/12345",
    500,
    QRCodeWriter.QrErrorCorrectionLevel.Medium);
qrCode.SaveAsPng("product-qr.png");

Saída do QR Code

Geração de Código de Barras ASP .NET: Construa um Gerador de Código de Barras para sua Aplicação Web: Imagem 2 - Imagem 2 de 6 relacionadas à Geração de Código de Barras ASP .NET: Construa um Gerador de Código de Barras para sua Aplicação Web

A geração de QR Code suporta níveis de correção de erro que determinam o quanto o código pode ser danificado enquanto permanece legível. Use Médio ou Alto para aplicações de QR Code de impressão onde o desgaste físico é esperado. Saiba mais sobre opções de customização de QR Code.

Data Matrix e Outros Formatos 2D

// Create Data Matrix barcode
GeneratedBarcode dataMatrix = BarcodeWriter.CreateBarcode(
    "DMX-2024-001",
    BarcodeWriterEncoding.DataMatrix);
dataMatrix.SaveAsGif("datamatrix.gif");

Saída do Data Matrix

Geração de Código de Barras ASP .NET: Construa um Gerador de Código de Barras para sua Aplicação Web: Imagem 3 - Data Matrix Gerado

Os códigos de barras Data Matrix se destacam em cenários que exigem codificação compacta e de alta densidade. A biblioteca também gera formatos PDF417, Aztec e MaxiCode. Esses tipos de códigos de barras 2D armazenam significativamente mais dados do que os formatos lineares, mantendo uma precisão de leitura confiável.

Códigos de Barras Lineares (UPC, EAN, Code 39)

// Create UPC-A barcode for retail products
GeneratedBarcode upcBarcode = BarcodeWriter.CreateBarcode(
    "012345678905",
    BarcodeWriterEncoding.UPCA);
upcBarcode.SaveAsPng("upc-barcode.png");

Saída

Geração de Código de Barras ASP .NET: Construa um Gerador de Código de Barras para sua Aplicação Web: Imagem 4 - Código de barras gerado

Os códigos de barras UPC A e EAN incluem validação automática de checksum, prevenindo erros de codificação durante o processo de geração do código de barras. Para uma lista completa de formatos suportados, veja a referência de formatos de código de barras.

Como Personalizar e Estilizar Imagens de Código de Barras?

Estilizar códigos de barras para uma aplicação web envolve ajustar cores, fontes, margens e anotações. A API fluente torna a personalização simples:

GeneratedBarcode styledBarcode = BarcodeWriter.CreateBarcode(
    "STYLED-2024",
    BarcodeWriterEncoding.Code128);
// Apply styling
styledBarcode.ResizeTo(450, 150);
styledBarcode.SetMargins(20);
styledBarcode.ChangeBarCodeColor(IronSoftware.Drawing.Color.DarkBlue);
styledBarcode.AddAnnotationTextAboveBarcode("Product ID:");
styledBarcode.AddBarcodeValueTextBelowBarcode();
// Export to multiple formats
styledBarcode.SaveAsPng("styled-barcode.png");
styledBarcode.SaveAsPdf("styled-barcode.pdf");

Imagem de Código de Barras Estilizada

Geração de Código de Barras ASP .NET: Construa um Gerador de Código de Barras para sua Aplicação Web: Imagem 5 - Código de barra estilizado de saída

O método SetMargins() adiciona espaço em branco ao redor do código de barras para melhor leitura pelo scanner. Você pode ajustar as configurações de fonte para o texto de anotação, mudar a família e o tamanho da fonte, e personalizar extensivamente o estilo do código de barras. A biblioteca renderiza texto utilizando fontes do sistema sem necessidade de fontes externas de código de barras.

Como Incluir um Código de Barras Diretamente em uma Visualização Razor?

Para visualizações ASP.NET MVC, gere códigos de barras como strings Base64 para incorporação direta em HTML sem salvar arquivos no disco:

public IActionResult DisplayBarcode()
{
    GeneratedBarcode barcode = BarcodeWriter.CreateBarcode(
        "INV-2024-0042",
        BarcodeWriterEncoding.Code128);
    string base64Image = barcode.ToDataUrl();
    ViewBag.BarcodeImage = base64Image;
    return View();
}

Código de Barras Exibido

Geração de Código de Barras ASP .NET: Construa um Gerador de Código de Barras para sua Aplicação Web: Imagem 6 - Código de barras exibido no nosso navegador

Na visualização Razor, exiba-o dentro de um elemento <div>:

<div class="barcode-container">
    <img src="@ViewBag.BarcodeImage" alt="Generated Barcode" />
</div>
<div class="print-actions">
    <button onclick="window.print()">Print Barcode</button>
</div>
HTML

Esta abordagem elimina a necessidade de salvar as imagens de código de barras no sistema de arquivos, mantendo o serviço web sem estado. A referência completa da API documenta todos os métodos e propriedades disponíveis.

Como Ler e Digitalizar Códigos de Barras no ASP.NET Core?

A leitura de códigos de barras a partir de imagens carregadas ou fluxos de arquivos é tratada pela classe BarcodeReader. Isso é útil em fluxos de recebimento, processamento de devoluções e qualquer cenário em que um código de barras digitalizado precise ser decodificado no servidor:

using IronBarCode;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;

public class BarcodeScanController : Controller
{
    public IActionResult ScanBarcode(IFormFile uploadedImage)
    {
        using var stream = uploadedImage.OpenReadStream();
        var results = BarcodeReader.Read(stream);
        if (results.Count > 0)
        {
            string decodedValue = results[0].Value;
            return Ok(new { barcode = decodedValue });
        }
        return BadRequest("No barcode detected in image.");
    }
}

O método BarcodeReader.Read() aceita caminhos de arquivos, fluxos e objetos System.Drawing.Bitmap. Ele detecta automaticamente o formato do código de barras e retorna uma coleção de objetos BarcodeResult, cada um contendo o valor decodificado, tipo de formato e posição na imagem. Quando vários códigos de barras aparecem em uma única imagem - por exemplo, em uma fotografia de prateleira de armazém - o leitor retorna todos os valores detectados na coleção, não apenas o primeiro.

O desempenho também vale a pena ser considerado para aplicações ASP.NET de alto rendimento. O leitor suporta a digitalização de regiões de interesse, que recorta a imagem para um retângulo de pixels específico antes da análise. Isso reduz significativamente o tempo de processamento quando os códigos de barras sempre aparecem em uma área conhecida da imagem.

Para cenários avançados, como ajuste de contraste para imagens de baixa qualidade ou ajuste da sensibilidade de detecção, consulte a documentação de leitura de códigos de barras.

Como Exportar Códigos de Barras para PDF no ASP.NET?

A geração de códigos de barras embutidos diretamente em documentos PDF é um requisito comum para etiquetas de remessa, etiquetas de armazém e documentos de compliance. IronBarcode suporta salvar diretamente no formato PDF:

GeneratedBarcode barcode = BarcodeWriter.CreateBarcode(
    "SHIP-2024-99471",
    BarcodeWriterEncoding.Code128);
barcode.ResizeTo(500, 150);
barcode.AddAnnotationTextAboveBarcode("Shipping Label");
barcode.AddBarcodeValueTextBelowBarcode();
barcode.SaveAsPdf("shipping-label.pdf");

Para documentos PDF com múltiplos códigos de barras -- por exemplo, uma página de etiquetas de produtos -- gere cada código de barras separadamente e combine-os usando uma biblioteca de PDF. O guia de integração IronPDF explica como carimbar códigos de barras em modelos PDF existentes, o que é útil para adicionar códigos de barras a layouts de rótulos pré-projetados.

O método SaveAsPdf() também aceita dimensões de saída para que a página PDF renderizada corresponda ao tamanho físico da etiqueta exigido pelas impressoras de etiquetas.

Como Lidar com Erros de Geração de Código de Barras e Validação?

As regras de codificação de código de barras variam conforme o formato. Por exemplo, o UPC-A requer exatamente 11 ou 12 dígitos, o EAN-13 requer exatamente 12 ou 13, e o Code 128 tem um limite prático de 48 caracteres para saída legível em tamanhos padrão. Passar dados inválidos gera um IronBarCodeEncoderException.

Trate erros de codificação explicitamente nas ações do controlador:

public IActionResult SafeGenerate(string data, string format)
{
    try
    {
        var encoding = Enum.Parse<BarcodeWriterEncoding>(format, true);
        GeneratedBarcode barcode = BarcodeWriter.CreateBarcode(data, encoding);
        return File(barcode.ToPngBinaryData(), "image/png");
    }
    catch (IronBarCodeEncoderException ex)
    {
        return BadRequest($"Encoding error: {ex.Message}");
    }
    catch (ArgumentException ex)
    {
        return BadRequest($"Unknown format: {ex.Message}");
    }
}

Para uso em produção, valide o comprimento dos dados de entrada e o conjunto de caracteres antes de chamar CreateBarcode(). A documentação do IronBarcode fornece restrições de codificação específicas de formato para cada tipo de código de barras suportado.

Quais são os seus próximos passos?

Construir um gerador de código de barras ASP.NET com IronBarcode fornece uma solução confiável para criar, estilizar e exportar imagens de códigos de barras em aplicativos web .NET Core. A biblioteca lida automaticamente com padrões de codificação complexos enquanto oferece ampla personalização através de uma API amigável para desenvolvedores. Quer você esteja gerando códigos QR para escaneamento móvel, códigos de barras Data Matrix para aplicações industriais ou códigos UPC para varejo, o IronBarcode integra-se diretamente com controladores ASP.NET MVC e páginas Razor.

Explore estes recursos para aprofundar o seu conhecimento:

Você pode testar o conjunto completo de recursos durante o período de avaliação gratuita. Para implantação em produção e uso comercial, veja as opções de licenciamento para selecionar a licença apropriada para os requisitos do seu projeto. A biblioteca suporta exportações de bitmap e vetor, com cada versão mantendo a compatibilidade entre os alvos de implantação do Windows, Linux, Android e iOS.

Para perguntas, comparações com bibliotecas de códigos de barras alternativas para .NET ou suporte de integração empresarial, visite o portal de suporte do IronBarcode.

Primeiro passo:
arrow pointer
Curtis Chau
Redator Técnico

Curtis Chau é bacharel em Ciência da Computação (Universidade Carleton) e se especializa em desenvolvimento front-end, com experiência em Node.js, TypeScript, JavaScript e React. Apaixonado por criar interfaces de usuário intuitivas e esteticamente agradáveis, Curtis gosta de trabalhar com frameworks modernos e criar manuais bem estruturados e visualmente atraentes.

...
Leia mais

Artigos relacionados

Key in blue circle

Obtenha sua chave de avaliação gratuita de 30 dias instantaneamente.

Your trial license will be sent to your email address

Sem limitações. 100% desbloqueado. Sem cartão de crédito.

bullet_checkedNão é necessário cartão de crédito nem criação de conta.Sem limitações. 100% desbloqueado. Sem cartão de crédito.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Agende sua demonstração ao vivo gratuita.
Booking Badge

Aprovado por milhões de engenheiros em todo o mundo.

Logotipos dos clientes da Iron Software
Agende sua consulta sem compromisso.
Preencha o formulário abaixo ou envie um e-mail para sales@ironsoftware.com
Os seus dados serão sempre mantidos em sigilo.
Aprovado por milhões de engenheiros em todo o mundo.
Logotipos dos clientes da Iron Software
Obtenha sua chave de avaliação gratuita de 30 dias instantaneamente.
Não é necessário cartão de crédito nem criação de conta.