Kā izveidot Micro, Compact un Macro PDF417 Barkodes .NET

Kā izveidot Micro, Compact un Macro PDF417 Barkodes .NET

Šajā rakstā ir aprakstīts, kā izveidot Micro PDF417, Compact PDF317 un Macro pdf417 barkodu .NET lietojumprogrammās, izmantojot Aspose.BarCode. Šīs versijas piedāvā telpas ietaupījumu, augstu jaudu un daudzsegmentu funkcijas, kas ir ideāli piemērotas etiķetēšanai, dokumentācijai un datu pārsūtīšanai.

Reālā pasaules problēma

Standarta PDF417 barkods var būt pārāk liels dažiem produktiem vai etiķetēm, un dažreiz informāciju vajadzētu sadalīt starp vairākiem barkodiem vai kodēt ļoti kompaktajā formātā regulatīvajiem vai operatīviem iemesliem.

Risinājumu pārskats

Aspose.BarCode for .NET ļauj izstrādātājiem izveidot visas PDF417 versijas programmatiski.

  • Micro PDF417: Ļoti mazām etiķetēm ar samazinātu datu un izmēru.
  • ** Kompakts PDF417:** Optimizēts izmēram bez kapacitātes zuduma.
  • Macro PDF417: Lieli dati tiek sadalīti starp vairākiem rakstiņu simboliem ar failu/segmenta metadatiem.

Prerequisites

Pirms sākat, pārliecinieties, ka jums ir:

  • Visual Studio 2019 vai vēlāk
  • .NET 6.0 vai jaunāks (vai .Net Framework 4.6.2+)
  • Aspose.BarCode .NET instalēts caur NuGet
  • Zināšanas par C#
PM> Install-Package Aspose.BarCode

Step-by-step īstenošana

1. solis: Uzstādīt un importēt Aspose.BarCode

using Aspose.BarCode.Generation;

2. solis: izveidot PDF417 variantu ģeneratoru

Mikroshēmas PDF417

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

Kompaktā PDF417:

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

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

3. solis: pielāgojiet rādītājus, kolonnas un ECC

Customizēt pēc nepieciešamības:

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

5. solis: Pilns piemērs (Visi PDF417 varianti)

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

Izmantojiet gadījumus un pieteikumus

  • Micro PDF417: Mazie produktu etiķetes, kompakts iepakojums
  • Compact PDF417: Dokumentu marķēšana, kompakti piegādes ķēdes barkodi
  • Macro PDF417: Datu sadalīšana veidlapām, manifestiem vai regulatīvajiem daudzpusējiem dokumentiem

Kopīgi izaicinājumi un risinājumi

*1. izaicinājums: nav pietiekami daudz datu?*Atrisinājums : Izmantojiet Macro PDF417 ar segmentiem ļoti lieliem datu komplektiem.

  • Izteikums 2: iznākums nav lasāms vai pārāk mazs?**Atrisinājums : Palieliniet moduļa (pixel) izmēru, pielāgojiet rādītājus / kolonnas telpai / datiem.

**Cilvēks 3: Daudzsegmentu failu rekonstrukcija?**Atrisinājums : Izmantojiet unikālu MacroFileID un saderīgu segmentu ID / kontu pareizai reorganizācijai.

Darbības apsvērumi

  • Izvēlieties pareizo PDF417 variantu jūsu pieteikuma izmēram / telpai
  • Batch pēc nepieciešamības rada Micro/Compact/Macro kodus
  • Izmantojiet atmiņas plūsmas integrācijai ar digitālajiem darba plusiem

Labākās prakses

  • Pārbaudiet visus PDF417 iznākumus ar fiziskiem skaneriem vai atbilstības validatoriem
  • Izmantojiet makro, lai sadalītu lielus failus/dokumentus
  • Dokumentu segmenta ID izmantošanai Macro PDF417
  • PNG eksports ar augstu DPI mazām vai detalizētām etiķetēm

Augstākie scenāriji

1.Batch ģenerē visus PDF417 variantus

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 .NET ļauj viegli izveidot visus PDF417 variantus – Micro, Compact un Macro – iepakojumam, dokumentācijai, regulatīvajām un digitālajām darba plūsmām. Aspose.BarCode API atsauce Par detaļām.

 Latviski