Comment générer Micro, Compact et Macro PDF417 Barcodes .NET

Comment générer Micro, Compact et Macro PDF417 Barcodes .NET

Cet article couvre la façon de générer des codes-barres Micro PDF417, Compact PDF47 et Macro PDF17 dans les applications .NET en utilisant Aspose.BarCode. Ces variantes offrent des fonctionnalités d’économie de l’espace, de haute capacité et de multi-segments idéales pour l’étiquetage, la documentation et le transfert de données.

Problème du monde réel

Le code bar PDF417 standard peut être trop grand pour certains produits ou étiquettes, et parfois les informations doivent être divisées entre plusieurs codes bar ou codées dans un format très compact pour des raisons réglementaires ou opérationnelles.

Vue de la solution

Aspose.BarCode pour .NET permet aux développeurs de générer toutes les variantes PDF417 de manière programmatique.

  • Micro PDF417: Pour les étiquettes très petites avec des données et des tailles réduites.
  • Compact PDF417: Optimisé pour la taille sans perte de capacité.
  • Macro PDF417: Distribue de grands données sur plusieurs symboles de code bar avec des métadonnées de fichiers/segments.

Principaux

Avant de commencer, assurez-vous que vous avez :

  • Visual Studio 2019 ou ultérieur
  • .NET 6.0 ou ultérieur (ou .Net Framework 4.6.2+)
  • Aspose.BarCode pour .NET installé via NuGet
  • Les connaissances de base de C#
PM> Install-Package Aspose.BarCode

La mise en œuvre étape par étape

Étape 1 : Installer et Importer Aspose.BarCode

using Aspose.BarCode.Generation;

Étape 2 : Créer le générateur PDF417

Méditerranée PDF417

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

Compact 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; 

Étape 3 : Ajuster les roues, les colonnes et l’ECC

Customiser comme nécessaire :

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);

Étape 5 : Exemple complet (Toutes les versions 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);
    }
}

Utiliser les cas et les applications

  • Micro PDF417: Petits étiquettes de produits, emballage compact
  • Compact PDF417: Étiquette de document, codes de barre de chaîne d’approvisionnement compacts
  • Macro PDF417: Détails partagés pour les formulaires, les manifestes ou les documents réglementaires multiples

Défis communs et solutions

Défi 1 : Pas de capacité de données suffisante ?La solution : Utilisez Macro PDF417 avec des segments pour des ensembles de données très grands.

Défi 2 : La sortie est-elle inédite ou trop petite ?La solution : Augmentez la taille du module (pixel), ajustez les lignes / colonnes pour l’espace / données.

**Défi 3 : reconstruction de fichiers multi-segments ?**La solution : Utilisez un macroFileID unique et les identifiants de segment / compte correspondants pour la réassemblage appropriée.

Considérations de performance

  • Choisissez la bonne version PDF417 pour votre taille/espace d’application
  • Batch génère des codes micro / compact / macro selon les besoins
  • Utiliser les flux de mémoire pour l’intégration avec les courants de travail numériques

Migliori pratiche

  • Testez toutes les sorties PDF417 avec des scanners physiques ou des validateurs de conformité
  • Utilisez le macro pour diviser de grands fichiers/documents
  • IDs de segment de document pour Macro PDF417 utilisation
  • Exportation de PNG à DPI élevé pour les étiquettes petites ou détaillées

Scénarios avancés

Batch génère toutes les versions 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);
}

Conclusion

Aspose.BarCode pour .NET permet de générer facilement toutes les variantes PDF417 – Micro, Compact et Macro – pour l’emballage, la documentation, les flux de travail réglementaires et numériques. Aspose.BarCode API de référence Pour les détails.

 Français