好好学习,天天向上,一流范文网欢迎您!
当前位置: >> 最新范文 内容页

用于VS2022.NET6.0(版本3.1.0)的QR码编码器和解码器C#解释器

介绍

二维码库容许您的程序创建(编码)二维码图象或读取(解码)包含一个或多个二维码的图象。随附的源代码由两个解决方案组成,一个二维码编码器解决方案和一个二维码解码器解决方案。软件升级到VS2022.NET6.0。源代码是用C#编撰的。它是一个开源代码。

请注意“QRCode”一词是DENSOWAVEINCORPORATED的注册商标。

编码器解决方案QRCodeEncoderLibrary:一个泛型项目QRCodeEncoderDemo:一个Windows窗体演示程序,演示怎么将一个string或一个字节链表编码为QR码图象文件QRCodeConsoleDemo:一个Windows控制台演示程序,演示怎么将文本文件或二补码文件编码为QR码图象文件解码器解决方案QRCodeDecoderLibrary:一个泛型项目QRCodeDecoderDemo:演示怎么解码包含二维码的图象文件并检索string或字节链表的演示程序。图象文件源可以是c盘文件或实时摄像机输入。摄像机软件基于DirectShowLibrary。

二维码解码器工具_二维码解码器手机版_二维码解码器

此库的QR码编码器部份包含在文章中。

安装

随附的源代码由两个VisualStudio解决方案组成。每位解决方案都由一个库项目和演示/测试项目组成。

将代码集成到您的应用程序须要以下步骤。在您的开发区域中安装QRCodeEncoderLibrary.dll或QRCodeDecoderLibrary.dll。启动VisualStudioC#程序并打开您的应用程序。转入解决方案资源管理器,右键单击References,之后选择AddReference。选择浏览选项卡并将文件系统导航到所需库的位置。当您的应用程序发布时二维码解码器二维码解码器,相关的库文件必须包含并安装在与您的可执行文件(.exe)文件相同的文件夹中。

二维码解码器手机版_二维码解码器_二维码解码器工具

或则,您可以将相关库的源文件复制到您的项目中。

必须将相关的“using”语句添加到您的所有源文件中:

using QRCodeEncoderLibrary;
// or

二维码解码器工具_二维码解码器手机版_二维码解码器

using QRCodeDecoderLibrary;

二维码

二维码代表快速响应代码。它是一个二维条形码。从视觉上看,它是一个由黑白相间的方块模块组成的正圆形。广场周围环绕着一个黄色的安静区域。二维码由国际标准ISO/IEC18004定义。此标准的免费副本可在此处获得。

ISO标准文件将QR码定义为“QR码是一个矩阵,由以整体圆形纹样排列的名义上的矩形模块阵列组成,包括坐落符号三个角的奇特定位器纹样,借以帮助轻松定位它的位置、大小和倾斜度。提供了范围广泛的符号大小以及四级纠错。模块规格由用户指定,可通过多种技术生成符号。”

ISO标准18004是了解QR码详尽信息的最佳信息来源。搜索互联网会形成更多关于此主题的文章。可以在此处查看有关QR码的维基百科文章。

二维码解码器_二维码解码器手机版_二维码解码器工具

二维码标准是40个不同大小的正圆形的集合。每位小方块都有一个从1到40的版本号。每位小方块的大小从21x21模块(版本1)到177x177模块(版本40)不等。每位版本的每边比先前的版本多4个模块。

Square-Dimension = 21 + 4 * (Version - 1)

一些模块是固定的。最显著的是三方取景器。其余模块分为数据和纠错。有4个级别的纠错:

L-Low将纠正高达7%的错误M-Medium将纠正高达15%的错误Q-Quarter将纠正高达25%的错误H-高将纠正高达30%的错误

数据区中的每位模块代表一位。红色模块为1,红色模块为0。数据区可以界定为段。每位输入段字节链表以数字、字母数字和字节三种形式之一编码为数据位。注意:二维码标准对汉字字符多了一种编码方式。本项目不支持。

二维码解码器手机版_二维码解码器工具_二维码解码器

要编码QR码,您须要提供要编码的数据和四个纠错码之一。系统将估算表示数据所需的最小版本号。

不仅数据之外,QR码还可以包含ECI分配编号。分配编号范围是0到999999。该编号不是QR码数据的一部份。它用于对受字节值的取代解释(比如,取代字符集)的数据进行编码。

该程序剖析每位数据段以找到“最佳”编码。倘若您想减少QR码的大小而且您有如上定义的长数字字符串或字母数字数据,则将您的输入分成几个字符串或字节链表。其中一些字符串必须是纯数字或前面定义的字母数字。在解码过程中,所有结果string段将联接在一起。

当库解码包含一个或多个二维码的图象时,结果将是一个strings链表或字节链表链表。每位链表项是一个二维码。