Как да генерирате Micro, Compact и Macro PDF417 Barcodes .NET

Как да генерирате Micro, Compact и Macro PDF417 Barcodes .NET

Тази статия обхваща как да се генерират Micro PDF417, Compact PDF 417, и Macro pdf417 баркодове в .NET приложения с помощта на Aspose.BarCode. Тези вариации предлагат пространствено-спасяване, висок капацитет и мулти-сегмент функции, идеални за етикетиране, документация и прехвърляне на данни.

Реални световни проблеми

Стандартните баркодове на PDF417 могат да бъдат твърде големи за някои продукти или етикети, а понякога информацията трябва да бъде разделена между няколко баракода или кодирана в високо компактен формат по регулаторни или оперативни причини.

Преглед на решението

Aspose.BarCode за .NET позволява на разработчиците да генерират всички PDF417 вариации програмно.

  • Micro PDF417: За много малки етикети с намалени данни и размери.
  • Compact PDF417: Оптимизиран за размери без загуба на капацитет.
  • Macro PDF417: Разделя големи данни между няколко символа на баркода с метаданни за файлове/сегменти.

Предупреждения

Преди да започнете, уверете се, че имате:

  • Visual Studio 2019 или по-късно
  • .NET 6.0 или по-късно (или .Net Framework 4.6.2+)
  • Aspose.BarCode за .NET, инсталиран чрез NuGet
  • Основни познания за C#
PM> Install-Package Aspose.BarCode

Стъпка по стъпка изпълнение

Стъпка 1: Инсталиране и импортиране Aspose.BarCode

using Aspose.BarCode.Generation;

Стъпка 2: Създаване на PDF417 Variant Generator

Микро PDF417

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

Комплект PDF417:

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

Макро 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: Приспособяване на редове, колони и ECC

Пригответе го, както е необходимо:

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: Допълнителен пример (Всички 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);
    }
}

Използване на случаи и приложения

  • Micro PDF417: Малки етикети за продукти, компактни опаковки
  • Compact PDF417: Етикетиране на документи, компактни баркодове за верига на доставки
  • Macro PDF417: Разделяне на данни за формуляри, манифести или регулаторни мулти-части документи

Съвместни предизвикателства и решения

Предизвикателство 1: Не е достатъчно капацитет на данни?Решението е: Използвайте Macro PDF417 с сегменти за много големи набори от данни.

Предизвикателство 2: Изходът не може да се чете или прекалено малък?Решението е: Увеличете размера на модула (пиксел), коригирайте редове / колони за пространство / данни.

Предизвикателство 3: възстановяване на мултисегментни файлове?Решението е: Използвайте уникален MacroFileID и съответстващ сегмент ID / акаунт за правилна реорганизация.

Преглед на изпълнението

  • Изберете правилния PDF417 вариант за размера/пространството на приложението си
  • Batch генерира Micro/Compact/Macro баркодове, както е необходимо
  • Използвайте потоците на паметта за интегриране с цифровите работни потоци

Най-добрите практики

  • Тествайте всички PDF417 изходи с физически сканери или валидатори за съответствие
  • Използвайте Macro за разделяне на големи файлове/документи
  • Идентифициране на сегмента на документа за Macro PDF417 използване
  • Износ на PNG при висок ДПИ за малки или подробни етикети

Разширени сценарии

Батч генерира всички 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);
}

заключение

Aspose.BarCode за .NET улеснява генерирането на всички PDF417 вариации – Micro, Compact и Macro – за опаковане, документация, регулаторни и цифрови работни потоци. Aspose.BarCode API Референт За детайлите.

 Български