Bagaimana untuk menghasilkan Micro, Compact, dan Macro PDF417 Barcode .NET

Bagaimana untuk menghasilkan Micro, Compact, dan Macro PDF417 Barcode .NET

Artikel ini merangkumi bagaimana untuk mencipta Barcode Micro PDF417 dan Macro PDF317 dalam aplikasi .NET menggunakan Aspose.BarCode. varian ini menawarkan ruang simpanan, kapasiti tinggi, dan ciri-ciri pelbagai segmen yang ideal untuk penandaan, dokumentasi dan pemindahan data.

Masalah dunia sebenar

Kod bar PDF417 standard boleh terlalu besar untuk beberapa produk atau label, dan kadang-kadang maklumat perlu dibahagikan kepada pelbagai kod bar atau dikodkan dalam format yang sangat kompak untuk sebab-sebab peraturan atau operasi.

Gambaran keseluruhan penyelesaian

Aspose.BarCode untuk .NET membolehkan pemaju untuk menghasilkan semua varian PDF417 secara programmatik.

  • Micro PDF417: Untuk label yang sangat kecil dengan data dan saiz yang dikurangkan.
  • Compact PDF417: Dioptimumkan untuk saiz tanpa kehilangan kapasiti.
  • Macro PDF417: Membahagikan data besar melalui pelbagai simbol kod bar dengan metadata fail/segmen.

Prerequisites

Sebelum memulakan, pastikan anda mempunyai:

  • Visual Studio 2019 atau seterusnya
  • .NET 6.0 atau lebih baru (atau .Net Framework 4.6.2+)
  • Aspose.BarCode untuk .NET dipasang melalui NuGet
  • Pengetahuan asas C#
PM> Install-Package Aspose.BarCode

Pelaksanaan langkah demi langkah

Langkah 1: Pemasangan dan Import Aspose.BarCode

using Aspose.BarCode.Generation;

Langkah 2: Mencipta PDF417 Variant Generator

Perbezaan PDF417

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

Perbincangan PDF417 :

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

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

Langkah 3: Menyesuaikan tali, lajur, dan ECC

Sesuai dengan keperluan :

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

Langkah 5: Contoh lengkap (semua PDF417 varian)

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

Penggunaan Kasus dan Permohonan

  • Micro PDF417: Label produk kecil, pembungkusan kompak
  • Compact PDF417: Pengenalan dokumen, barcode rantaian bekalan kompak
  • Macro PDF417: Membahagikan data untuk borang, manifesto, atau dokumen peraturan pelbagai bahagian

Tantangan dan Penyelesaian Bersama

*Tantangan 1: Tidak cukup kapasiti data?**Penyelesaian : Gunakan Macro PDF417 dengan segmen untuk set data yang sangat besar.

*Challenge 2: output tidak boleh dibaca atau terlalu kecil?**Penyelesaian : Meningkatkan saiz modul (pixel), menyesuaikan baris/kolom untuk ruang/data.

**Challenge 3: Rekonstruksi fail pelbagai segmen?**Penyelesaian : Gunakan MacroFileID unik dan ID segmen / akaun yang sepadan untuk pengumpulan semula yang betul.

Pertimbangan prestasi

  • Pilih varian PDF417 yang betul untuk saiz / ruang aplikasi anda
  • Batch menghasilkan Micro/Compact/Macro barcode mengikut keperluan
  • Menggunakan aliran memori untuk mengintegrasikan dengan arus kerja digital

amalan terbaik

  • Ujian semua output PDF417 dengan pemindai fizikal atau pengesahan pematuhan
  • Menggunakan Macro untuk membahagikan fail/dokumen besar
  • ID segmen dokumen untuk penggunaan Macro PDF417
  • Eksport PNG pada DPI tinggi untuk label kecil atau terperinci

Senario lanjutan

1. batch menghasilkan semua PDF417 varian

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 untuk .NET memudahkan pengeluaran semua varian PDF417 - Micro, Compact, dan Macro - untuk pembungkusan, dokumentasi, peraturan, serta aliran kerja digital. Aspose.BarCode API rujukan untuk butiran.

 Melayu