Os códigos de barras PDF417 são amplamente utilizados em várias indústrias, como transporte, logística e gerenciamento de identidade devido à sua alta capacidade de dados e robustas capacidades de correção de erros.

Introdução

PDF417 é um código de barras em 2D que pode codificar até 1.850 bytes de dados por símbolo, tornando-o ideal para aplicações que requerem grandes quantidades de informação.

Desenvolva seu ambiente

Antes de mergulhar em exemplos de código, certifique-se de que seu ambiente de desenvolvimento é adequadamente configurado:

Pré-requisitos

  • Visual Studio 2019 ou posterior
  • .NET 6.0 ou posterior (ou .NET Framework 4.6.2+)
  • Aspose.BarCode para .NET instalado através de NuGet

Instale o pacote usando o seguinte comando no seu Package Manager Console:

PM> Install-Package Aspose.BarCode

Implementação passo a passo

Passo 1: Crie e Configure BarcodeGenerator

Em primeiro lugar, criar uma instância de BarcodeGenerator e especifique o tipo como PDF417.

BarcodeGenerator barcodeGenerator = new BarcodeGenerator(EncodeTypes.Pdf417, "PASSENGER: SMITH/JANE\nFLIGHT: 1234\nDATE: 2025-06-18");

Passo 2: Personalizar as configurações do PDF417

Ajuste várias propriedades, como linhas, colunas, nível de correção de erros e configurações de cores para atender às suas necessidades.

// Set number of rows and columns
barcodeGenerator.Parameters.Barcode.Pdf417.Pdf417Rows = 10;
barcodeGenerator.Parameters.Barcode.Pdf417.Pdf417Columns = 4;
// Set error correction level (0-8, higher is stronger)
barcodeGenerator.Parameters.Barcode.Pdf417.Pdf417ErrorLevel = Pdf417ErrorLevel.Level5;
// Optional: Set XDimension (pixel size)
barcodeGenerator.Parameters.Barcode.XDimension.Pixels = 4;
// Optional: Set foreground and background color
barcodeGenerator.Parameters.Barcode.BarColor = Color.Black;
barcodeGenerator.Parameters.Barcode.BackColor = Color.White;

Passo 3: Gerar e salvar a imagem de código de barras

Finalmente, salve a imagem de código de barras gerada para um arquivo ou fluxo.

barcodeGenerator.Save("boarding-pass-pdf417.png", BarCodeImageFormat.Png);

Exemplo completo

Aqui está o exemplo completo que liga tudo:

Use Casos e Aplicações

  • Passos de embarque: Bilhetes de avião e transporte
  • Cartões de identificação e credenciais: Identidade de máquina lida, licenças
  • Logística e inventário: Etiquetas de envio e armazenamento

Desafios comuns e soluções

**Desejo 1: PDF417 não escanear?**Solução : Use a correção de erro suficiente, ajuste as linhas/colunas para o tamanho dos dados, verifica o Tamanho do módulo para os scanners.

Desejo 2: Dados muito grandes? Solução : Aumentar o tamanho do código de barras, linhas / colunas ou dados divididos.

Challenge 3: Blurry ou baixa imagem?Solução : Exportação em tamanho pixel superior ou DPI para uso de impressão.

Considerações de desempenho

  • Use a correção de erro correta para a crítica da aplicação
  • Batch gera PDF417 para listas de passageiros ou manifestos de envio
  • Use fluxos de memória para a exportação de código de barras em Memória

Melhores Práticas

  • Linhas e colunas para dados e tamanho de rótulo
  • Testes com scanners/dispositivos PDF417 certificados
  • Exportação para PNG para impressão, JPEG para exibição digital
  • Mantenha o texto de dados estruturado e conciso

Os cenários avançados

Batch Genere PDF417 Código de Barras

foreach (var ticket in tickets)
{
    BarcodeGenerator g = new BarcodeGenerator(EncodeTypes.Pdf417, ticket.Data);
    g.Save($"pdf417_{ticket.Id}.png", BarCodeImageFormat.Png);
}

Configurar PDF417 Compacção e Macro Modos

// Set compaction mode for numeric, text, or binary data
barcodeGenerator.Parameters.Barcode.Pdf417.Pdf417CompactionMode = Pdf417CompactionMode.Text;
// Enable macro PDF417 for segmented/barcoded documents
barcodeGenerator.Parameters.Barcode.Pdf417.Pdf417MacroFileID = 12345;

Conclusão

Aspose.BarCode para .NET permite que você crie códigos de barras PDF417 para aplicações de transporte, ID e inventário, com controle avançado sobre formato e segurança. Aspose.BarCode API Referência.

More in this category