Как да генерирате 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 Референт За детайлите.