如何設置QR碼錯誤更正級別

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

掌握效能控制。 調整錯誤更正設置,以建立更快速、更耐用的QR碼,能夠承受損壞並仍然可靠掃描。

錯誤更正是區分QR碼是否能持續工作的關鍵。 當印刷標籤被刮傷、貼紙剝落、或海報在陽光下褪色時,錯誤更正決定了程式碼是否仍可被掃描。 IronQR允許開發者選擇QR碼的具體韌性,從輕量化的適用於數位顯示的程式碼到能夠在倉庫和工廠地面中生存的重型程式碼。

本指南演示如何使用IronQR程式庫配置錯誤更正級別,平衡資料密度與耐損容限,適用於各種情境。 首次接觸生成QR碼的開發者應首先參閱將QR碼建立為圖像指南。

快速開始:設定QR碼錯誤更正

通過QrOptions配置錯誤更正級別,生成具有抵抗力的QR碼。

  1. 使用NuGet套件管理器安裝https://www.nuget.org/packages/IronQR

    PM > Install-Package IronQR
  2. 複製並運行這段程式碼片段。

    var options = new QrOptions(QrErrorCorrectionLevel.Medium);
    var qrCode = QrWriter.Write("https://example.com", options);
    qrCode.Save().SaveAs("qr-medium.png");
  3. 部署以在您的實時環境中測試

    今天就開始在您的專案中使用IronQR,透過免費試用

    arrow pointer

了解錯誤更正級別

QR碼使用里德-所羅門錯誤更正,即使在部分破損或遮蔽時仍保持可掃描。 IronQR中的QrErrorCorrectionLevel列舉提供四個級別,每個都將資料容量與增加的韌性進行交易:

級別 恢復能力 最適合
QrErrorCorrectionLevel.Low ~7%損壞 數位螢幕,控制環境
QrErrorCorrectionLevel.Medium ~15%損壞 通用用途,中等耐用性
QrErrorCorrectionLevel.High ~25%損壞 印刷材料,戶外標誌
QrErrorCorrectionLevel.Highest ~30%損壞 工業標籤,惡劣環境

更高的錯誤更正增加了更多的冗餘模組,這增加了QR碼的視覺密度。 這還影響生成圖像的大小,因此開發者可能需要相應調整尺寸。 滿足耐用性要求的最低級別保持程式碼緊湊且掃描快速。

設定錯誤更正級別

要設置錯誤更正級別,將所需的QrOptions構造函式。 然後在生成QR碼時將這些選項傳遞給QrWriter.Write()

在此範例中,錯誤更正設置為中級,可恢復最多15%的損壞資料,同時保持程式碼緊湊。

:path=/static-assets/qr/content-code-examples/how-to/error-correction-qr-code.cs
using IronQr;
using IronSoftware.Drawing;

QrOptions options = new QrOptions(QrErrorCorrectionLevel.Medium);

// Create QR code
QrCode qr = QrWriter.Write("1234", options);

// Save QR code as a bitmap
AnyBitmap qrImage = qr.Save();

// Save QR code bitmap as file
qrImage.SaveAs("qrMedium.png");
Imports IronQr
Imports IronSoftware.Drawing

Dim options As New QrOptions(QrErrorCorrectionLevel.Medium)

' Create QR code
Dim qr As QrCode = QrWriter.Write("1234", options)

' Save QR code as a bitmap
Dim qrImage As AnyBitmap = qr.Save()

' Save QR code bitmap as file
qrImage.SaveAs("qrMedium.png")
$vbLabelText   $csharpLabel

輸出

具有中級錯誤更正的QR碼

比較錯誤更正級別

每個級別都產生視覺上不同的QR碼。 較低的級別生成較簡單的圖案,掃描速度更快,而較高級別則建立更密集的圖案,更能承受損壞。 以下是如何在每個級別生成相同資料以供比較:

:path=/static-assets/qr/content-code-examples/how-to/error-correction-qr-code-compare.cs
using IronQr;
using IronSoftware.Drawing;

string data = "https://ironsoftware.com";

// Low - ~7% recovery, smallest code
QrCode qrLow = QrWriter.Write(data, new QrOptions(QrErrorCorrectionLevel.Low));
qrLow.Save().SaveAs("qrLow.png");

// Medium - ~15% recovery, balanced
QrCode qrMedium = QrWriter.Write(data, new QrOptions(QrErrorCorrectionLevel.Medium));
qrMedium.Save().SaveAs("qrMedium.png");

// High - ~25% recovery, durable
QrCode qrHigh = QrWriter.Write(data, new QrOptions(QrErrorCorrectionLevel.High));
qrHigh.Save().SaveAs("qrHigh.png");

// Highest - ~30% recovery, maximum resilience
QrCode qrHighest = QrWriter.Write(data, new QrOptions(QrErrorCorrectionLevel.Highest));
qrHighest.Save().SaveAs("qrHighest.png");
Imports IronQr
Imports IronSoftware.Drawing

Dim data As String = "https://ironsoftware.com"

' Low - ~7% recovery, smallest code
Dim qrLow As QrCode = QrWriter.Write(data, New QrOptions(QrErrorCorrectionLevel.Low))
qrLow.Save().SaveAs("qrLow.png")

' Medium - ~15% recovery, balanced
Dim qrMedium As QrCode = QrWriter.Write(data, New QrOptions(QrErrorCorrectionLevel.Medium))
qrMedium.Save().SaveAs("qrMedium.png")

' High - ~25% recovery, durable
Dim qrHigh As QrCode = QrWriter.Write(data, New QrOptions(QrErrorCorrectionLevel.High))
qrHigh.Save().SaveAs("qrHigh.png")

' Highest - ~30% recovery, maximum resilience
Dim qrHighest As QrCode = QrWriter.Write(data, New QrOptions(QrErrorCorrectionLevel.Highest))
qrHighest.Save().SaveAs("qrHighest.png")
$vbLabelText   $csharpLabel

請注意更高的錯誤更正級別增加QR碼中的模組數量,使圖案更加密集。 如果掃描速度是優先考量,建議選擇滿足專案耐用性需求的最低級別。

輸出

具有低錯誤更正等級的 QR 碼
具有中級錯誤更正的QR碼
具有高錯誤更正等級的 QR 碼
具有最高錯誤更正等級的 QR 碼

選擇適合使用情境的正確級別

適合的錯誤更正級別取決於QR碼將出現的位置及其需要承受的條件:

使用情境 級別 原因 相關指南
數位顯示和網站 QrErrorCorrectionLevel.Low 螢幕乾淨,光線控制,無物理磨損。 保持程式碼簡單並快速掃描。 將QR碼建立為圖像
名片、傳單和室內標識 QrErrorCorrectionLevel.Medium 輕微處理和輕微折痕不會影響掃描。 搭配合適的邊距以獲得最佳效果。 為QR碼新增邊距
產品包裝和戶外海報 QrErrorCorrectionLevel.High 材料面臨雨水、紫外線曝露及運輸期間的粗糙處理。 放大尺寸以適應遠距離掃描。 調整QR碼大小
倉庫標籤、工廠地面和工業標籤 QrErrorCorrectionLevel.Highest 在程式碼被刮傷、弄髒或部分覆蓋的惡劣環境中。 最大程度的冗餘確保程式碼保持工作。 從圖像讀取QR碼

欲了解更多高級QR碼生成模式,請探索C# QR Code Generator 練習課程及完整IronQR功能集

常見問題

IronQR中有哪些QR碼錯誤更正級別可用?

IronQR提供四種QR碼錯誤更正級別:低、中、高和最高。這些級別幫助即使QR碼部分損壞也能保持其可掃描性。

如何使用IronQR在C#中設置QR碼的錯誤更正級別?

您可以通過配置QrOptions類的QrErrorCorrectionLevel屬性在IronQR中設置錯誤更正級別。使用QrWriter.Write方法生成具有指定錯誤更正級別的QR碼。

為什麼錯誤更正對QR碼很重要?

錯誤更正對QR碼至關重要,因為它確保即使QR碼部分損壞或被遮擋,它們仍然保持可掃描性。IronQR允許您選擇不同的錯誤更正級別以滿足您的需求。

IronQR能否處理具有自定義錯誤更正設置的QR碼生成?

是的,IronQR允許您自定義QR碼的錯誤更正設置,使您能夠在資料容量與對損壞的穩健性之間取得平衡。

IronQR中的預設錯誤更正級別是什麼?

IronQR通常預設設置為中等錯誤更正級別,這在資料容量與錯誤抗性之間提供了一種平衡的方法,但您可以根據需要進行自定義。

是否可以使用IronQR更改現有QR碼的錯誤更正級別?

要更改錯誤更正級別,您需要使用IronQR的QrOptions和QrWriter類以所需的錯誤更正級別重新生成QR碼。

更高的錯誤更正級別如何影響QR碼的大小?

提高錯誤更正級別通常會導致QR碼變得更大,因為為了提高損壞恢復能力而包括更多的冗餘資料,這由IronQR有效管理。

在什麼情況下可能需要QR碼的高錯誤更正級別?

在QR碼可能受到損壞的環境中,高錯誤更正級別是有益的,比如工業設施或戶外場所,確保資料保持可存取性。IronQR提供靈活性,允許您設置此級別。

在設置錯誤更正級別方面,使用IronQR需要高級編程技能嗎?

不,IronQR設計為易於使用,即使初學者也可以使用簡單的C#程式碼輕鬆設置QR碼錯誤更正級別。

IronQR能否用於具有特定錯誤更正需求的商業應用QR碼生成?

是的,IronQR非常適合商業應用,因為它提供可自定義的錯誤更正級別,確保QR碼能夠承受各種條件,同時保持資料完整性。

Curtis Chau
技術作家

Curtis Chau擁有Carleton大學的電腦科學學士學位,專精於前端開發,擁有Node.js、TypeScript、JavaScript和React的專業知識。Curtis熱衷於建立直觀且美觀的使用者介面,喜愛使用現代框架並建立結構良好、視覺吸引力的手冊。

除了開發,Curtis對物聯網(IoT)有濃厚的興趣,探索創新的方法來整合硬體和軟體。在空閒時間,他喜歡玩遊戲和建立Discord機器人,結合他對技術的熱愛與創造力。

準備好開始了嗎?
Nuget 下載 70,398 | 版本: 2026.7 剛剛發布
Still Scrolling Icon

還在滾動?

想要快速證明嗎? PM > Install-Package IronQR
執行一個範例 觀看您的URL變成QR碼。