IRONSOFTWAREHOME

Criar Código de Barras a partir de Textoo, URLs, IDs e Dados Binários em C#

Hairil Hasyimi Bin Omar
Hairil Hasyimi Bin Omar
Updated: 4 de junho de 2026

IronBarcode permite que desenvolvedores C# gerem códigos de barras a partir de várias fontes de dados, incluindo strings, arrays de bytes e fluxos de memória usando o método BarcodeWriter.CreateBarcode() com suporte para múltiplos formatos de código de barras como QR Code, Code128 e PDF417.

Início Rápido: Crie um Código de Barras a partir de String em Uma Linha

Use a API do IronBarcode para gerar códigos de barras com configuração mínima. Este exemplo mostra como criar um código de barras a partir de uma string simples usando apenas uma linha de código. Para exemplos abrangentes, confira o guia Início Rápido de Código de Barras.

  1. 1Install IronBarcode with NuGet Package Manager

    PM > Install-Package BarCode

  2. 2Copie e execute este trecho de código.

    var barcode = IronBarCode.BarcodeWriter.CreateBarcode("Order123", IronBarCode.BarcodeWriterEncoding.Code128);
    C#
  3. 3Implante para testar em seu ambiente de produção.

    Comece a usar IronBarcode em seu projeto hoje com uma avaliação gratuita
    arrow pointer

Como faço para criar Código de Barras a partir de String?

Quais Formatos de Código de Barras Funcionam Melhor para Diferentes Tipos de String?

Diferentes formatos de código de barras são otimizados para tipos de dados e casos de uso específicos. Compreender os formatos de código de barras suportados ajuda a selecionar a codificação correta:

  • Códigos QR: Melhor para URLs, endereços de e-mail e dados de texto extensos. Suporta até 4.296 caracteres alfanuméricos com correção de erros.
  • Code128: Ideal para dados alfanuméricos como números de pedidos e códigos de série. Altamente eficiente para aplicações modernas.
  • PDF417: Perfeito para dados complexos como bilhetes de voos e IDs governamentais. Armazena até 1.850 caracteres alfanuméricos.
  • Code93: Excelente para serviços postais e rastreamento de inventário com dados numéricos compactos.
  • Aztec: Ótimo para bilhetagem móvel e transporte, requerendo menos espaço que os códigos QR.

O código a seguir demonstra como escrever códigos de barras com uma string:

using IronBarCode;

string text = "Hello, World!";
string url = "https://ironsoftware.com/csharp/barcode/";
string receiptID = "2023-08-04-12345"; // Receipt ID (numeric id)
string flightID = "FLT2023NYC-LAX123456"; // Flight ID (alphanumeric id)
string number = "1234";

BarcodeWriter.CreateBarcode(text, BarcodeEncoding.Aztec).SaveAsPng("text.png");
BarcodeWriter.CreateBarcode(url, BarcodeEncoding.QRCode).SaveAsPng("url.png");
BarcodeWriter.CreateBarcode(receiptID, BarcodeEncoding.Code93, 250, 67).SaveAsPng("receiptID.png");
BarcodeWriter.CreateBarcode(flightID, BarcodeEncoding.PDF417, 250, 67).SaveAsPng("flightID.png");
BarcodeWriter.CreateBarcode(number, BarcodeEncoding.Codabar, 250, 67).SaveAsPng("number.png");

Quais são os Resultados dos Códigos de Barras Gerados?

Este código codifica cinco exemplos de dados diferentes em cinco tipos de código de barras: texto simples para Aztec, URL para QR Code, ID numérico para Code 93, ID alfanumérico para PDF417, e número para Codabar. Imagens são salvas como PNG. Para opções avançadas de exportação, veja o guia Criar Código de Barras como Imagem.

Código de barras Aztec contendo o texto 'Hello, World!' com padrão espiral quadrado característico
QR code gerado a partir de uma URL de entrada demonstrando a funcionalidade de criação de código de barras
Exemplo de código de barras Code93 gerado mostrando o padrão de barras verticais em preto e branco
Código de barras PDF417 com linhas empilhadas codificando dados alfanuméricos de ID de voo
Código de barras Codabar exibindo dados numéricos com caracteres de início/parada

Como Posso Personalizar Códigos de Barras Gerados?

Após criar seu código de barras, melhore sua aparência usando os recursos de estilo do IronBarcode. Veja como criar um código de barras personalizado com cores, anotações e margens:

using IronBarCode;

// Create a barcode with custom styling
GeneratedBarcode myBarcode = BarcodeWriter.CreateBarcode("PRODUCT-12345", BarcodeEncoding.Code128);

// Apply custom styling
myBarcode.ResizeTo(300, 100);
myBarcode.SetMargins(10);
myBarcode.ChangeBarCodeColor(Color.DarkBlue);

// Add text annotations
myBarcode.AddBarcodeValueTextBelowBarcode();
myBarcode.AddAnnotationTextAboveBarcode("Product SKU", Font.Arial, Color.Black, 12);

// Save the customized barcode
myBarcode.SaveAsPng("customized-barcode.png");

Para mais opções de estilo, explore o tutorial Customizar e Estilizar Códigos de Barras.

Como Eu Crio Código de Barras a Partir de Array de Bytes?

Por Que a Codificação de Caracteres Importa para Códigos de Barras em Array de Bytes?

Para criar códigos de barras a partir de arrays de bytes, certifique-se de que a codificação de caracteres se alinhe com o BarcodeEncoding necessário, visto que cada tipo de código de barras aceita diferentes codificações de caracteres. Compreender os formatos de dados de saída garante compatibilidade. Aqui estão as codificações de caracteres disponíveis no IronBarcode:

  • ASCII: Usa 7 bits por caractere para letras, dígitos e pontuação em inglês. Exemplo: 'A' = 65.
  • UTF-8: Codificação de comprimento variável para todos os caracteres Unicode. Exemplo: € = 0xE2 0x82 0xAC.
  • UTF-16: Usa sequências de 16 bits para Unicode. Exemplo: α = 0x03B1.
  • UTF-32: Sequência fixa de 32 bits por caractere. Exemplo: α = 0x000003B1.
  • ISO-8859-1: Estende ASCII para línguas da Europa Ocidental. Exemplo: é = 233.

[[i:A codificação de caracteres padrão no IronBarcode é ISO-8859-1.]]

Como Eu Converto Arrays de Bytes em Códigos de Barras?

O código a seguir demonstra a geração de um código de barras a partir de dados em byte:

using IronBarCode;
using System.Text;

byte[] text = Encoding.UTF8.GetBytes("Hello, World!");
byte[] url = Encoding.UTF8.GetBytes("https://ironsoftware.com/csharp/barcode/");
byte[] receiptID = Encoding.UTF8.GetBytes("2023-08-04-12345"); // Receipt ID (numeric id)
byte[] flightID = Encoding.UTF8.GetBytes("FLT2023NYC-LAX123456"); // Flight id (alphanumeric id)
byte[] number = Encoding.UTF8.GetBytes("1234");

BarcodeWriter.CreateBarcode(text, BarcodeEncoding.Aztec).SaveAsPng("text.png");
BarcodeWriter.CreateBarcode(url, BarcodeEncoding.QRCode).SaveAsPng("url.png");
BarcodeWriter.CreateBarcode(receiptID, BarcodeEncoding.Code93, 250, 67).SaveAsPng("receiptID.png");
BarcodeWriter.CreateBarcode(flightID, BarcodeEncoding.PDF417, 250, 67).SaveAsPng("flightID.png");
BarcodeWriter.CreateBarcode(number, BarcodeEncoding.Codabar, 250, 67).SaveAsPng("number.png");

Este trecho transforma cinco entradas de string em objetos System.Byte[]. Para converter esses arrays de bytes em códigos de barras, passe-os para BarcodeWriter com o BarcodeEncoding desejado. Opcionalmente, defina MaxWidth e MaxHeight para o tamanho do código de barras.

Trabalhando com Dados Binários e Caracteres Especiais

Ao trabalhar com dados binários ou caracteres especiais, use Escrevendo Códigos de Barras Unicode para suporte a caracteres internacionais. Aqui está um exemplo de tratamento de dados binários:

using IronBarCode;
using System.Text;
using System.IO;

// Example: Encoding binary data (like a small file) into QR Code
byte[] binaryData = File.ReadAllBytes("document.pdf");
string base64Data = Convert.ToBase64String(binaryData);

// Create QR code with high error correction for binary data
GeneratedBarcode binaryBarcode = QRCodeWriter.CreateQrCode(
    base64Data,
    errorCorrectionLevel: QRCodeWriter.QrErrorCorrectionLevel.High
);

// Save with appropriate size for data density
binaryBarcode.ResizeTo(500, 500);
binaryBarcode.SaveAsPng("binary-data-qr.png");
C#

Como Eu Crio Código de Barras a Partir de Fluxo de Memória?

Quando Devo Usar Fluxos de Memória para Geração de Código de Barras?

Fluxos de memória funcionam melhor ao processar dados que não requerem armazenamento em disco, como conteúdo gerado dinamicamente em aplicações web ou processamento de banco de dados. O guia Exportar Código de Barras como Fluxo fornece contexto adicional para fluxos de trabalho baseados em fluxo.

O código a seguir demonstra a geração de um código de barras a partir de um fluxo de memória:

using IronBarCode;
using System.IO;
using System.Text;

MemoryStream text = new MemoryStream(Encoding.UTF8.GetBytes("Hello, World!"));
MemoryStream url = new MemoryStream(Encoding.UTF8.GetBytes("https://ironsoftware.com/csharp/barcode/"));
MemoryStream receiptID = new MemoryStream(Encoding.UTF8.GetBytes("2023-08-04-12345")); // Receipt ID (numeric id)
MemoryStream flightID = new MemoryStream(Encoding.UTF8.GetBytes("FLT2023NYC-LAX123456")); // Flight id (alphanumeric id)
MemoryStream number = new MemoryStream(Encoding.UTF8.GetBytes("1234"));

BarcodeWriter.CreateBarcode(text, BarcodeEncoding.Aztec).SaveAsPng("text.png");
BarcodeWriter.CreateBarcode(url, BarcodeEncoding.QRCode).SaveAsPng("url.png");
BarcodeWriter.CreateBarcode(receiptID, BarcodeEncoding.Code93, 250, 67).SaveAsPng("receiptID.png");
BarcodeWriter.CreateBarcode(flightID, BarcodeEncoding.PDF417, 250, 67).SaveAsPng("flightID.png");
BarcodeWriter.CreateBarcode(number, BarcodeEncoding.Codabar, 250, 67).SaveAsPng("number.png");

Quais São os Benefícios de Usar Fluxos de Memória?

Este trecho cria um MemoryStream a partir de um objeto System.Byte[], em seguida, o usa como entrada em BarcodeWriter.CreateBarcode() para gerar um código de barras a partir de dados MemoryStream. Fluxos de memória oferecem várias vantagens:

  1. Desempenho: Sem operações de E/S de disco, mais rápido para dados temporários
  2. Segurança: Dados permanecem na memória, reduzindo a exposição de informações sensíveis
  3. Flexibilidade: Fácil integração com APIs e bibliotecas baseadas em fluxo
  4. Eficiência de Recursos: Gerenciamento e descarte automático de memória

Exemplo Avançado de Processamento de Fluxo

Para cenários complexos envolvendo processamento de fluxo, combine IronBarcode com outras operações de fluxo:

using IronBarCode;
using System.IO;
using System.Text;

// Example: Processing multiple barcodes in a batch using streams
public static List<Stream> GenerateBarcodeStreams(List<string> dataItems)
{
    var barcodeStreams = new List<Stream>();
    
    foreach (var item in dataItems)
    {
        // Convert string to stream
        var dataStream = new MemoryStream(Encoding.UTF8.GetBytes(item));
        
        // Generate barcode from stream
        var barcode = BarcodeWriter.CreateBarcode(dataStream, BarcodeEncoding.Code128);
        
        // Export barcode back to stream
        var outputStream = new MemoryStream();
        barcode.SaveAsPng(outputStream);
        outputStream.Position = 0; // Reset position for reading
        
        barcodeStreams.Add(outputStream);
    }
    
    return barcodeStreams;
}

// Usage example
var orderNumbers = new List<string> { "ORD-001", "ORD-002", "ORD-003" };
var barcodes = GenerateBarcodeStreams(orderNumbers);

Para operações assíncronas e melhora de desempenho em aplicações multithread, veja o guia Usar Assíncrono e Multithread.

Perguntas frequentes

Como faço para criar um código de barras a partir de um texto em C#?

Você pode criar um código de barras a partir de um texto em C# usando o IronBarcode com apenas uma linha de código: `BarcodeWriter.CreateBarcode("YourText", BarcodeWriterEncoding.Code128)`. O IronBarcode suporta diversos formatos, incluindo QR Code, Code128, PDF417, Aztec e muitos outros.

Que tipos de dados posso codificar em códigos de barras?

O IronBarcode permite codificar vários tipos de dados, incluindo strings, URLs, IDs, dados binários (matrizes de bytes) e fluxos de memória. A biblioteca lida automaticamente com a conversão e a codificação com base no formato de código de barras escolhido.

Qual formato de código de barras devo usar para URLs?

Os códigos QR são a melhor opção para codificar URLs no IronBarcode. Eles podem armazenar até 4.296 caracteres alfanuméricos e incluem recursos de correção de erros, tornando-os ideais para endereços da web e endereços de e-mail.

Qual o melhor formato de código de barras para números de pedidos e códigos de série?

O Code128 é o formato ideal para dados alfanuméricos, como números de pedidos e códigos de série, quando usado com o IronBarcode. É altamente eficiente para aplicações modernas e oferece excelente densidade de dados para conjuntos de caracteres mistos.

Posso criar códigos de barras a partir de dados binários?

Sim, o IronBarcode suporta a criação de códigos de barras a partir de dados binários usando arrays System.Byte[] ou entradas System.IO.Stream através do método CreateBarcode, permitindo codificar qualquer tipo de informação binária.

Em que formatos de imagem posso salvar códigos de barras?

O IronBarcode permite salvar códigos de barras gerados em vários formatos de imagem, incluindo PNG, JPEG, BMP, GIF e TIFF. A biblioteca oferece opções flexíveis de exportação para diferentes casos de uso.

Qual a quantidade de dados que posso armazenar em um código de barras PDF417?

Os códigos de barras PDF417 criados com o IronBarcode podem armazenar até 1.850 caracteres alfanuméricos, tornando-os perfeitos para dados complexos como passagens aéreas, etiquetas de envio e documentos de identidade governamentais.

Qual o melhor formato de código de barras para bilhetes eletrônicos?

Os códigos de barras Aztec são ideais para bilhetagem móvel e aplicações de transporte quando usados com o IronBarcode. Eles exigem menos espaço do que os códigos QR, mantendo alta capacidade de dados e legibilidade em dispositivos móveis.

What example use cases benefit from using IronBarcode's PDF417 format?

PDF417 is suitable for complex data storage like flight tickets, government IDs, and other applications requiring robust data encoding. It can store up to 1,850 alphanumeric characters.

How can IronBarcode handle binary data for QR code generation?

IronBarcode can handle binary data by converting it to a Base64 string and then generating a QR code with high error correction. This approach is useful for encoding small file data or binary data streams.

Pronto para começar?

Nuget Downloads 2,422,100Versão:2026.9recém-lançado

Obtenha o seu GRÁTIS

Obtenha uma chave de avaliação de 30 dias instantaneamente.

bullet_checkedNão é necessário cartão de crédito nem criação de conta.
bullet_testTeste em produção
sem marcas d'água
bullet_calendar30 dias completos
produto funcional
bullet_supportSuporte técnico 24 horas por dia,
5 dias por semana, durante o teste
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.
Biblioteca NuGet C# para PDF
Instalar com NuGet

Versão: 2026.9

PM > Install-Package BarCode
nuget.org/packages/BarCode/
  1. No Solution Explorer, clique com o botão direito do mouse em Referências e selecione Gerenciar Pacotes NuGet.
  2. Selecione Procurar e pesquise "IronBarCode".
  3. Selecione o pacote e instale.
DLL de PDF em C#
Baixar DLL

Versão: 2026.9

  1. Baixe e descompacte o IronBarCode em um local como ~/Libs dentro do diretório da sua solução.
  2. No Solution Explorer do Visual Studio, clique com o botão direito do mouse em Referências. Selecione Procurar e digite "IronBarCode.dll".

Licenças a partir de US$ 749

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.