Cómo Generar Micro, Compact y Macro PDF417 Barcodos .NET

Cómo Generar Micro, Compact y Macro PDF417 Barcodos .NET

Este artículo abarca la forma de generar micro PDF417, compact pdf417 y macro PDF317 códigos de barras en aplicaciones .NET utilizando Aspose.BarCode. Estas variantes ofrecen recursos de ahorro de espacio, alta capacidad y multi-segmento ideales para el etiquetado, la documentación y la transferencia de datos.

Problemas del mundo real

Los códigos de barras PDF417 estándar pueden ser demasiado grandes para algunos productos o etiquetas, y a veces la información necesita ser dividida entre varios códenes o codificada en un formato altamente compacto por razones regulatorias o operativas.

Revisión de Soluciones

Aspose.BarCode para .NET permite a los desarrolladores generar todas las variantes de PDF417 de forma programática.

  • Micro PDF417: Para etiquetas muy pequeñas con datos reducidos y tamaño.
  • Compact PDF417: Optimizado para el tamaño sin pérdida de capacidad.
  • Macro PDF417: Divide grandes datos a través de varios símbolos de código de barras con metadatos de archivo/segmento.

Prerequisitos

Antes de comenzar, asegúrese de tener:

  • Visual Studio 2019 o más tarde
  • .NET 6.0 o posterior (o .Net Framework 4.6.2+)
  • Aspose.BarCode para .NET instalado a través de NuGet
  • Conocimiento básico de C#
PM> Install-Package Aspose.BarCode

Implementación paso a paso

Paso 1: Instalar y importar Aspose.BarCode

using Aspose.BarCode.Generation;

Paso 2: Crea el generador de variantes PDF417

Página PDF417

BarcodeGenerator microGen = new BarcodeGenerator(EncodeTypes.MicroPdf417, "Micro data");
microGen.Parameters.Barcode.XDimension.Pixels = 4; 

Compacto PDF417:

BarcodeGenerator compactGen = new BarcodeGenerator(EncodeTypes.CompactPdf417, "Compact info");
compactGen.Parameters.Barcode.XDimension.Pixels = 4; 

Macro PDF417:

BarcodeGenerator macroGen = new BarcodeGenerator(EncodeTypes.MacroPdf417, "Segmented large dataset");
macroGen.Parameters.Barcode.Pdf417.Pdf417MacroFileID = 123;
macroGen.Parameters.Barcode.Pdf417.Pdf417MacroSegmentID = 1;
macroGen.Parameters.Barcode.Pdf417.Pdf417MacroSegmentsCount = 3;
macroGen.Parameters.Barcode.XDimension.Pixels = 4; 

Paso 3: Ajuste las rodillas, columnas y ECC

Personalizar como sea necesario:

microGen.Parameters.Barcode.Pdf417.Pdf417Rows = 4;
microGen.Parameters.Barcode.Pdf417.Pdf417Columns = 2;
compactGen.Parameters.Barcode.Pdf417.Pdf417ErrorLevel = Pdf417ErrorLevel.Level2;
macroGen.Parameters.Barcode.Pdf417.Pdf417ErrorLevel = Pdf417ErrorLevel.Level4; ```

---

### Step 4: Save and Test the Barcode Output

```cs
microGen.Save("micro-pdf417.png", BarCodeImageFormat.Png);
compactGen.Save("compact-pdf417.png", BarCodeImageFormat.Png);
macroGen.Save("macro-pdf417-segment1.png", BarCodeImageFormat.Png);

Paso 5: Ejemplo completo (Todas las variantes PDF417)

using Aspose.BarCode.Generation;
using System.Drawing;

class Program
{
    static void Main()
    {
        // Micro PDF417
        BarcodeGenerator microGen = new BarcodeGenerator(EncodeTypes.MicroPdf417, "Micro data");
        microGen.Parameters.Barcode.XDimension.Pixels = 4;
        microGen.Parameters.Barcode.Pdf417.Pdf417Rows = 4;
        microGen.Parameters.Barcode.Pdf417.Pdf417Columns = 2;
        microGen.Save("micro-pdf417.png", BarCodeImageFormat.Png);

        // Compact PDF417
        BarcodeGenerator compactGen = new BarcodeGenerator(EncodeTypes.CompactPdf417, "Compact info");
        compactGen.Parameters.Barcode.XDimension.Pixels = 4;
        compactGen.Parameters.Barcode.Pdf417.Pdf417ErrorLevel = Pdf417ErrorLevel.Level2;
        compactGen.Save("compact-pdf417.png", BarCodeImageFormat.Png);

        // Macro PDF417 (segment 1 of 3)
        BarcodeGenerator macroGen = new BarcodeGenerator(EncodeTypes.MacroPdf417, "Segmented large dataset");
        macroGen.Parameters.Barcode.Pdf417.Pdf417MacroFileID = 123;
        macroGen.Parameters.Barcode.Pdf417.Pdf417MacroSegmentID = 1;
        macroGen.Parameters.Barcode.Pdf417.Pdf417MacroSegmentsCount = 3;
        macroGen.Parameters.Barcode.XDimension.Pixels = 4;
        macroGen.Parameters.Barcode.Pdf417.Pdf417ErrorLevel = Pdf417ErrorLevel.Level4;
        macroGen.Save("macro-pdf417-segment1.png", BarCodeImageFormat.Png);
    }
}

Usar Casos y Aplicaciones

  • Micro PDF417: Pequeñas etiquetas de producto, embalaje compacto
  • Compact PDF417: Etiquetado de documento, códigos de bar de cadena de suministro compacto
  • Macro PDF417: Compartir datos para formularios, manifestos o documentos regulatorios de múltiples partes

Desafíos y soluciones comunes

Distinto 1: ¿No hay suficiente capacidad de datos?La solución: Utilice Macro PDF417 con segmentos para conjuntos de datos muy grandes.

Challenge 2: ¿La salida es inaceptable o demasiado pequeña?La solución: Aumentar el tamaño del módulo (pixel), ajustar las líneas / columnas para el espacio / datos.

Challenge 3: Reconstrucción de archivos multi-segmento?La solución: Utilice un MacroFileID único y los IDs de segmento/conto que se ajustan para la reestructuración adecuada.

Consideraciones de rendimiento

  • Seleccione la variante PDF417 adecuada para su tamaño/espacio de aplicación
  • Batch genera códigos de barro Micro/Compact/Macro según sea necesario
  • Utilice los flujos de memoria para la integración con las corrientes de trabajo digitales

Mejores Prácticas

  • Testar todos los resultados de PDF417 con escáneres físicos o validadores de conformidad
  • Utilice Macro para dividir grandes archivos/documentos
  • IDs del segmento de documentos para el uso de Macro PDF417
  • Exportación de PNG a alto DPI para etiquetas pequeñas o detalladas

Escenarios avanzados

Batch genera todas las variantes PDF417

foreach (var doc in documents)
{
    BarcodeGenerator g = new BarcodeGenerator(EncodeTypes.MacroPdf417, doc.SegmentData);
    g.Parameters.Barcode.Pdf417.Pdf417MacroFileID = doc.FileID;
    g.Parameters.Barcode.Pdf417.Pdf417MacroSegmentID = doc.SegmentID;
    g.Parameters.Barcode.Pdf417.Pdf417MacroSegmentsCount = doc.TotalSegments;
    g.Save($"macro_{doc.FileID}_segment{doc.SegmentID}.png", BarCodeImageFormat.Png);
}

Conclusión

Aspose.BarCode para .NET hace que sea fácil generar todas las variantes de PDF417 -Micro, Compact y Macro- para el embalaje, la documentación, los flujos de trabajo regulatorios y digitales. Aspose.BarCode API Referencia Para los detalles.

 Español