如何在 C# | IronQR 中設定錯誤更正

如何在 C# 中設定錯誤修正

This article was translated from English: Does it need improvement?
Translated
View the article in English

條碼糾錯是指即使有視覺缺陷或編碼錯誤,也能保持條碼可讀性的能力。 這些損壞可能是由於印刷瑕疵、污跡、刮痕或掃描條件的變化等因素造成的。 糾錯是決定哪一種條碼編碼類型適當的重要因素。

一般來說,由於以下因素,二維條碼比一維條碼具有更高的缺陷容忍度:

-資料容量:二維條碼可以儲存比一維條碼多得多的數據,因為它們可以水平和垂直地對資料進行編碼,可以容納字母數字、二進位資料、影像等等。 -冗餘性:二維條碼具有多層資料編碼,即使條碼的一部分損壞,也可以從任何剩餘的完整部分提取資訊。 -緊湊性:二維條碼由於其緊湊的形狀,適用於空間有限的場所。 -靈活性:二維條碼可以從各種角度和方向掃描。

快速入門:在二維碼建立中使用糾錯等級

這個簡短的範例展示如何使用 IronBarcode 輕鬆產生二維碼,並將糾錯等級設為"中"。 開發者可以使用 CreateQrCode 方法,透過設定尺寸、內容和糾錯級別,在幾秒鐘內快速上手。

Nuget Icon立即開始使用 NuGet 建立 PDF 檔案:

  1. 使用 NuGet 套件管理器安裝 IronBarcode

    PM > Install-Package BarCode

  2. 複製並運行這段程式碼。

    var qr = IronBarCode.QRCodeWriter.CreateQrCode("https://ironsoftware.com", 500, IronBarCode.QRCodeWriter.QrErrorCorrectionLevel.Medium).SaveAsPng("qr.png");
  3. 部署到您的生產環境進行測試

    立即開始在您的專案中使用 IronBarcode,免費試用!
    arrow pointer


調整二維碼糾錯範例

目前,IronBarcode 支援在QR 碼Micro QR 碼rMQR 碼中設定糾錯功能。 它支援二維碼標準規定的所有四個預設糾錯等級。 透過QRCodeWriter.CreateQrCode方法中的QrErrorCorrection參數調整錯誤校正等級。 糾錯分為四個層次:

-最高等級H級。 最多可恢復 30% 的資料。 -Q級。 最多可恢復 25% 的資料。 -M級。 最多可恢復 15% 的資料。 -L級。 最多可恢復 7% 的資料。

更高的糾錯等級會導致更複雜的二維碼影像,因此在生成二維碼時需要在視覺清晰度和糾錯之間取得平衡。 以下程式碼範例示範如何設定糾錯:

:path=/static-assets/barcode/content-code-examples/how-to/set-error-correction.cs
// Import the necessary namespace for barcode generation
using IronBarCode;

// Create a QR code with the specified URL, size, and error correction level
GeneratedBarcode mediumCorrection = QRCodeWriter.CreateQrCode(
    "https://ironsoftware.com/csharp/barcode/", // URL to be encoded in the QR code
    500,                                       // Size of the QR code (500x500 pixels)
    QRCodeWriter.QrErrorCorrectionLevel.Medium // Error correction level to handle distortions
);

// Save the generated QR code image as a PNG file with the specified filename
mediumCorrection.SaveAsPng("mediumCorrection.png");
' Import the necessary namespace for barcode generation
Imports IronBarCode

' Create a QR code with the specified URL, size, and error correction level
Private mediumCorrection As GeneratedBarcode = QRCodeWriter.CreateQrCode("https://ironsoftware.com/csharp/barcode/", 500, QRCodeWriter.QrErrorCorrectionLevel.Medium)

' Save the generated QR code image as a PNG file with the specified filename
mediumCorrection.SaveAsPng("mediumCorrection.png")
$vbLabelText   $csharpLabel

糾錯比較

下面這組二維碼圖像範例,每個圖像都代表相同的值,但糾錯等級各不相同。 如觀察所見,更高的糾錯等級會導致更複雜的二維碼影像,從而提供更大的容錯能力。

最高糾錯率
高糾錯能力
中等誤差校正
低糾錯率

常見問題解答

什麼是 BarCode 的錯誤修正,為什麼它很重要?

BarCode 中的錯誤修正是指在視覺缺陷或編碼錯誤(如污點或刮痕)的情況下仍能保持可讀性的能力。此功能對於確保條碼應用程式中資料的準確性和可靠性至關重要。

二維條碼與一維條碼在糾錯方面有何不同?

二維條碼與一維條碼的不同之處在於其較高的資料容量、冗餘性、緊湊性和靈活性。這使得二維條碼能夠更不易受損,也更容易從各種角度掃描,增強其錯誤修正能力。

如何使用 C# 在 QR 碼中設定錯誤修正等級?

若要使用 C# 在 QR 碼中設定錯誤修正等級,您可以使用 IronBarcode 函式庫。下載該函式庫,使用 QRCodeWriter 類,並調整 QrErrorCorrection 參數以設定所需的錯誤修正等級。

QR 碼有哪些可用的錯誤修正等級?

QR 碼支援四種錯誤修正等級:最高(H 級,30% 資料復原)、高(Q 級,25% 資料復原)、中(M 級,15% 資料復原)和低(L 級,7% 資料復原)。這些等級決定 QR 碼損毀時能復原多少資料。

修改錯誤修正等級對 QR 代碼的外觀有何影響?

修改錯誤修正等級會影響 QR 代碼的複雜性。較高的錯誤修正等級會產生更複雜的影像,在視覺清晰度與資料復原能力之間取得平衡。

使用什麼方法在 C# 中建立具有特定錯誤修正功能的 QR 碼?

在 C# 中,QRCodeWriter.CreateQrCode 方法用於透過調整 QrErrorCorrection 參數,以產生具有指定錯誤修正等級的 QR 代碼。

使用此程式庫是否可以將錯誤修正應用於 QR 代碼以外的其他條碼類型?

是的,IronBarcode 程式庫除了支援 QR code 之外,還支援其他條碼類型的錯誤修正,例如 Micro QR 和 rMQR。

錯誤修正對 BarCode 的資料容量有什麼影響?

較高的錯誤修正等級會降低 BarCode 的資料容量,因為更多空間會用於儲存錯誤修正資料,減少實際資料可用的空間。

Hairil Hasyimi Bin Omar
軟體工程師
和所有优秀的工程师一样,Hairil 是个努力学习者。他正在细化自己的 C# 、Python 和 Java 知识,将这些知识应用于 Iron Software 各个团队成员以增加价值。Hairil 自马来西亚 Universiti Teknologi MARA 加入 Iron Software 团队,并以化学与工艺工程学士学位毕业。
準備好開始了嗎?
Nuget 下載 1,979,979 | Version: 2025.11 剛發表