Jak generovat Micro, Compact a Macro PDF417 Barcode .NET

Jak generovat Micro, Compact a Macro PDF417 Barcode .NET

Tento článek se zabývá způsobem, jak vytvářet Micro PDF417, Compact PDF317 a Macro pdf417 čárové kódy v aplikacích .NET pomocí Aspose.BarCode. Tyto varianty nabízejí šetrné místo, vysokou kapacitu a multi-segment funkce ideální pro označování, dokumentaci a přenos dat.

Reálný světový problém

Standardní čárové kódy PDF417 mohou být pro některé produkty nebo etikety příliš velké, a někdy je třeba, aby informace byly rozděleny na více čárních kódů nebo šifrovány ve velmi kompaktním formátu z regulačních nebo provozních důvodů.

Řešení přehled

Aspose.BarCode pro .NET umožňuje vývojářům vytvářet všechny varianty PDF417 programově.

  • Micro PDF417: Pro velmi malé štítky s omezenými daty a velikostí.
  • Kompaktní PDF417: Optimalizován pro velikost bez ztráty kapacity.
  • Macro PDF417: Rozděluje velké údaje přes několik symbolů čárového kódu s metadata souboru/segmentu.

Předpoklady

Než začnete, ujistěte se, že máte:

  • Visual Studio 2019 nebo novější
  • .NET 6.0 nebo novější (nebo .Net Framework 4.6.2+)
  • Aspose.BarCode pro .NET instalován prostřednictvím NuGet
  • Základní znalosti C#
PM> Install-Package Aspose.BarCode

krok za krokem implementace

Krok 1: Instalace a import Aspose.BarCode

using Aspose.BarCode.Generation;

Krok 2: Vytvoření PDF417 Variant Generator

Mikroskopy PDF417

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

Soubor PDF417:

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

Macro PDF417 je k dispozici:

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; 

Krok 3: Přizpůsobte stropy, sloupce a ECC

Přizpůsobte se podle potřeby:

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

Krok 5: Kompletní příklad (Všechny PDF417 varianty)

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

Použití případů a aplikací

  • Micro PDF417: Malé produktové štítky, kompaktní balení
  • Kompaktní PDF417: Dokumentové označení, kompaktní dodavatelský řetězec kódů
  • Macro PDF417: Rozdělte údaje pro formuláře, manifesty nebo regulační dokumenty s více částmi

Společné výzvy a řešení

Výzva 1: Nedostatečná kapacita dat?Řešení : Použijte Macro PDF417 s segmenty pro velmi velké datové sady.

**Výzva 2: Výstup nečitelný nebo příliš malý?**Řešení : Zvýšte velikost modulů (pixelů), upravte řádky / sloupce pro prostor / data.

**Výzva 3: Rekonstrukce souborů v mnoha segmentech?**Řešení : Použijte unikátní MacroFileID a odpovídající segmentové ID/účty pro správnou montáž.

Úvahy o výkonu

  • Vyberte si správnou verzi PDF417 pro velikost aplikace / prostor
  • Batch generuje mikro/kompaktní/makro čárové kódy podle potřeby
  • Použití paměťových toků pro integraci s digitálními pracovními toky

Nejlepší postupy

  • Testování všech výsledků PDF417 s fyzikálními skenery nebo validátory shody
  • Použití makra pro rozdělení velkých souborů/dokumentů
  • ID segmentu dokumentu pro použití Macro PDF417
  • Vývoz PNG při vysokém DPI pro malé nebo podrobné štítky

Pokročilé scénáře

Batch generuje všechny PDF417 varianty

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

závěr

Aspose.BarCode pro .NET umožňuje snadné generování všech variant PDF417 – Micro, Compact a Macro – pro balení, dokumentaci, regulační a digitální pracovní toky. Aspose.BarCode API Reference Pro detaily .

 Čeština