Kako generirati Micro, Compact i Macro PDF417 Barkode .NET
Ovaj članak obuhvaća kako generirati Micro PDF417, Compact PDF317 i Macro pdf417 barkode u .NET aplikacijama pomoću Aspose.BarCode. Ove varijante nude spašavanje prostora, visoke kapacitete i multi-segment funkcije savršene za označavanje, dokumentaciju i prijenos podataka.
Real-svjetski problem
Standardni PDF417 barkodi mogu biti preveliki za neke proizvode ili oznake, a ponekad informacije moraju biti podijeljene na više barkodova ili kodirane u vrlo kompaktnom formatu iz regulatornih ili operativnih razloga.
Pregled rješenja
Aspose.BarCode za .NET omogućuje razvijalcima da programski generiraju sve PDF417 varijante.
- Micro PDF417: Za vrlo male oznake s smanjenim podacima i veličinama.
- Kompaktni PDF417: Optimiziran za veličinu bez gubitka kapaciteta.
- Macro PDF417: Razdvaja velike podatke na više simbola čvornog koda s metapodatima datoteke/segmenta.
Preduzeća
Prije nego što počnete, pobrinite se da imate:
- Visual Studio 2019 ili kasnije
- .NET 6.0 ili noviji (ili .Net Framework 4.6.2+)
- Aspose.BarCode za .NET instaliran preko NuGeta
- Osnovna znanja o C#
PM> Install-Package Aspose.BarCode
Korak po korak provedba
Korak 1: Instaliranje i uvoz Aspose.BarCode
using Aspose.BarCode.Generation;
Korak 2: Kreirajte PDF417 Variant Generator
Sljedeći članakMicro PDF417
BarcodeGenerator microGen = new BarcodeGenerator(EncodeTypes.MicroPdf417, "Micro data");
microGen.Parameters.Barcode.XDimension.Pixels = 4;
Kompaktni PDF417:
BarcodeGenerator compactGen = new BarcodeGenerator(EncodeTypes.CompactPdf417, "Compact info");
compactGen.Parameters.Barcode.XDimension.Pixels = 4;
Sljedeći članakMacro 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;
Korak 3: Prilagodite trake, stolpce i ECC
Korištenje prema potrebi:
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);
Korak 5: Popuniti primjer (Sve PDF417 varijante)
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);
}
}
Korištenje slučajeva i aplikacija
- Micro PDF417: Malo oznake proizvoda, kompaktna ambalaža
- Kompaktni PDF417: Oznaka dokumenta, kompaktni kodovi lanca opskrbe
- Macro PDF417: Razdvajanje podataka za obrasce, manifeste ili regulatorni višestruki dokumenti
Zajednički izazovi i rješenja
**Izazov 1: Nije li dovoljno kapaciteta podataka?**Rješenje : Koristite Macro PDF417 s segmentima za vrlo velike zbirke podataka.
Izazov 2: Nečitan ili previše mali?Rješenje : Povećajte veličinu modula (pixel), prilagodite redove / stolpce za prostor / podatke.
**Izazov 3: Multi-segment obnova datoteke?**Rješenje : Koristite jedinstvenu MacroFileID i odgovarajuće ID segmenta/računa za ispravnu ponovnu montažu.
Razmatranje učinkovitosti
- Odaberite pravu PDF417 varijantu za veličinu/prostor aplikacije
- Batch generira mikro/kompaktne/makro kodove po potrebi
- Koristite memorijske struje za integraciju s digitalnim radnim tokovima
Najbolje prakse
- Provjerite sve PDF417 izlaze s fizičkim skenerima ili validatorima sukladnosti
- Koristite Macro za razdvajanje velikih datoteka/dokumenata
- ID segmenta dokumenata za Macro PDF417 korištenje
- Izvoz PNG na visokom DPI za male ili detaljne oznake
Napredni scenariji
Batch generira sve PDF417 varijante
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);
}
zaključak
Aspose.BarCode za .NET olakšava generiranje svih PDF417 varijanti – Micro, Compact i Macro – za pakiranje, dokumentaciju, regulatorne i digitalne radne tokove. Aspose.BarCode API referenca Za detalje.