如何设置纠错

Hairil related to 如何设置纠错
海瑞尔 哈西米 本 奥马尔
2023年八月22日
更新 2024年十一月18日
分享:
This article was translated from English: Does it need improvement?
Translated
View the article in English

什么是纠错?

错误更正在条形码中指的是在存在视觉缺陷或编码错误的情况下,维持其可读性的能力程度。 这些损害可能由各种因素引起,例如打印瑕疵、污迹、划痕或扫描条件的变化。 纠错是用户确定适合使用哪种条形码编码的主要因素之一。

一般来说,二维条形码与一维条形码相比,对缺陷的容忍度更高。 这是由于以下因素造成的:

调整二维码中的纠错示例

当前,IronBarcode 仅支持在QR 码微型 QR 码和rMQR 中设置错误校正。 IronBarcode 支持 QR 标准规定的所有四种预设纠错级别。 可以通过在QRCodeWriter.CreateQrCode方法中调整QrErrorCorrection参数来设置错误更正级别。 纠错的四个级别如下所示:

  • 最高: 级别 H。 可恢复多达 30% 的数据。
  • : 等级 Q。 可恢复多达 25% 的数据。
  • 中等:等级M。 可恢复多达 15%的数据。
  • : 等级 L。 可恢复多达 7% 的数据。

    值得注意的是,更高的错误纠正级别会导致更复杂的二维码图像。 因此,用户在生成二维码时需要在视觉清晰度和纠错之间找到平衡。 以下代码示例演示了如何设置纠错:

:path=/static-assets/barcode/content-code-examples/how-to/set-error-correction.cs
using IronBarCode;

GeneratedBarcode mediumCorrection = QRCodeWriter.CreateQrCode("https://ironsoftware.com/csharp/barcode/", 500, QRCodeWriter.QrErrorCorrectionLevel.Medium);
mediumCorrection.SaveAsPng("mediumCorrection.png");
Imports IronBarCode

Private mediumCorrection As GeneratedBarcode = QRCodeWriter.CreateQrCode("https://ironsoftware.com/csharp/barcode/", 500, QRCodeWriter.QrErrorCorrectionLevel.Medium)
mediumCorrection.SaveAsPng("mediumCorrection.png")
$vbLabelText   $csharpLabel

错误纠正比较

以下是一组示例QR码图像,每个图像代表相同的值,但错误更正级别各不相同。 显而易见,更高级别的错误校正会导致更复杂的二维码图像,从而提供更高的容错能力。

最高纠错率
高纠错
介质纠错
低纠错
Hairil related to 错误纠正比较
海瑞尔 哈西米 本 奥马尔
软件工程师
像所有优秀的工程师一样,Hairil 是一个热衷学习的人。他正在精进自己的 C#、Python 和 Java 知识,并利用这些知识为 Iron Software 团队成员增添价值。Hairil 毕业于马来西亚的马来西亚工艺大学(Universiti Teknologi MARA),获得了化学与工艺工程学士学位,然后加入了 Iron Software 团队。