英國皇家郵政 Mailmark 二維條碼是一種用於信件的機器可讀的複雜條碼。它提供有關郵件追蹤和投遞狀態的資訊。它還可能包括附加信息,例如交付時間表和報告統計數據。在本文中,我們將學習如何使用 C# 來產生和讀取 Royal Mail Mailmark 二維條碼。
本文將涵蓋以下主題:
用於產生和讀取 Royal Mail 二維碼的 C# API
為了產生和讀取 Royal Mail QR 碼,我們將使用 Aspose.BarCode for .NET API。使用 API,我們可以產生並識別各種一維和二維條碼類型。
請下載 API 的 DLL 或使用 NuGet 安裝它。
PM> Install-Package Aspose.BarCode
什麼是皇家條碼?
英國皇家郵政條碼是一種複雜郵件資料標記 (CMDM) 條碼。它由英國郵政系統開發,用於自動化郵件分類和追蹤。它具有Data Matrix類型ECC200代碼的指定格式,符合國際標準。它也稱為皇家郵政 4 州客戶代碼 (RM4SCC)。
皇家郵政 QR 碼的類型
二維複雜郵件資料標記條碼分為三種:
- 類型7:
- 信件
- 條碼尺寸:24 × 24 模組
- 物理尺寸:12×12毫米
- 總字元數:51 個字符
- 客戶使用:6個備用空間
- 類型9:
- 大字母,包括塑膠包裝字母
- 條碼尺寸:32 × 32 模組
- 物理尺寸:16×16毫米
- 總字元數:90 個字符
- 客戶使用:>25 但最多 45 個備用空間
- 類型 29:
- 大字母,包括塑膠包裝字母
- 條碼尺寸:16 × 48 模組
- 物理尺寸:8×24毫米
- 總字元數:70 個字符
- 總字元數:我們需要 6-25 個客戶字元。
在 C# 產生皇家郵政條碼郵票
我們可以按照以下步驟產生皇家郵政條碼郵票:
- 首先,建立 Mailmark2DCodetext 類別的實例。
- 接下來,設定各種屬性,例如 UPUCountryID、VersionID、Class、ItemID 等。
- 然後,將 Mailmark2DType 指定為 Type7、Type9 或 Type29。
- 接下來,使用 Mailmark2DCodetext 物件作為參數建立 ComplexBarcodeGenerator 類別的實例。
- 之後,設定條碼尺寸。
- 最後呼叫Save方法將條碼圖片儲存到本機磁碟。
以下程式碼範例示範如何使用 C# 產生類型 7 的 Mailmark 二維條碼。
// 此程式碼範例示範如何產生 Mailmark 二維條碼
// 初始化郵標二維碼
Mailmark2DCodetext mailmark2D = new Mailmark2DCodetext();
mailmark2D.UPUCountryID = "JGB ";
mailmark2D.InformationTypeID = "0";
mailmark2D.VersionID = "1";
mailmark2D.Class = "1";
mailmark2D.SupplyChainID = 123;
mailmark2D.ItemID = 1234;
mailmark2D.DestinationPostCodeAndDPS = "QWE1";
mailmark2D.RTSFlag = "0";
mailmark2D.ReturnToSenderPostCode = "QWE2";
// 對郵標 2D 類型 7 代碼進行編碼
mailmark2D.DataMatrixType = Mailmark2DType.Type_7;
mailmark2D.CustomerContent = "CUSTOM";
// 初始化條碼產生器
var generator = new ComplexBarcodeGenerator(mailmark2D);
generator.Parameters.Barcode.XDimension.Pixels = 4;
// 節省
generator.節省(@"D:\Files\BarCode\Mailmark2DType7.png");
使用 C# 讀取皇家郵政二維碼
我們可以按照以下步驟讀取皇家郵政二維碼:
- 首先,建立 BarCodeReader 類別的實例。
- 接下來,提供輸入條碼影像路徑和 DecodeType。
- 然後,透過呼叫 ReadBarCodes() 方法取得 BarCodeResult。
- 之後,使用 TryDecodeMailmark2D() 方法解碼條碼。
- 最後,讀取 Mailmark2DCodetext 物件的解碼屬性。
以下程式碼範例示範如何使用 C# 讀取 Mailmark QR 碼。
// 此程式碼範例示範如何讀取 Mailmark 二維條碼
// 識別郵標二維碼
BarCodeReader reader = new BarCodeReader(@"D:\Files\BarCode\Mailmark2DType7.png", DecodeType.DataMatrix);
foreach (BarCodeResult result in reader.ReadBarCodes())
{
// 解碼二維郵標
Mailmark2DCodetext mailmarkResult = ComplexCodetextReader.TryDecodeMailmark2D(result.CodeText);
// 讀取屬性
Console.WriteLine($"UPUCountryID:{mailmarkResult.UPUCountryID}");
Console.WriteLine($"InformationTypeID:{mailmarkResult.InformationTypeID}");
Console.WriteLine($"VersionID:{mailmarkResult.VersionID}");
Console.WriteLine($"Class:{mailmarkResult.Class}");
Console.WriteLine($"SupplyChainID:{mailmarkResult.SupplyChainID}");
Console.WriteLine($"ItemID:{mailmarkResult.ItemID}");
Console.WriteLine($"DestinationPostCodeAndDPS:{mailmarkResult.DestinationPostCodeAndDPS}");
Console.WriteLine($"RTSFlag:{mailmarkResult.RTSFlag}");
Console.WriteLine($"ReturnToSenderPostCode:{mailmarkResult.ReturnToSenderPostCode}");
Console.WriteLine($"CustomerContent:{mailmarkResult.CustomerContent}");
}
UPUCountryID:JGB
InformationTypeID:0
VersionID:1
Class:1
SupplyChainID:123
ItemID:1234
DestinationPostCodeAndDPS:QWE1
RTSFlag:0
ReturnToSenderPostCode:QWE2
CustomerContent:CUSTOM DATA
取得免費許可證
您可以獲得免費的臨時許可證來試用該庫,而不受評估限制。
Mailmark 二維條碼庫 - 學習資源
除了產生和讀取 Royal Mail QR 碼之外,您還可以使用以下資源了解有關 Aspose.BarCode 的各種其他功能的更多資訊:
結論
在本文中,我們學習如何產生皇家郵政二維碼並將條碼圖像保存在磁碟上。我們也了解如何以程式設計方式讀取產生的 Mailmark 二維條碼。此外,您可以使用文件來了解更多關於Aspose.BarCode for .NET API的資訊。如有任何疑問,請隨時透過我們的免費支援論壇與我們聯繫。