Data Matrix原名Data code,由美国国际资料公司(International Data Matrix, 简称ID Matrix)于1989年发明。Data Matrix又可分为ECC000-140与ECC200两种类型,ECC000-140具有多种不同等级的错误纠正功能,而ECC200则透过Reed-Solomon演算法产生多项式计算出错误纠正码,其尺寸可以依需求印成不同大小,但采用的错误纠正码应与尺寸配合,由于其演算法较为容易,且尺寸较有弹性,故一般以ECC200较为普遍。【百度百科】
目前能实现检测与识别库有libdmtx库和zxing。这里以libdmtx库为例,进行检测与识别。
在c++ windows vs环境中,环境配置还是有些麻烦的。从上述链接中下载所需libdmtx源文件(本人使用的是0.7.5版本)。
如果按照上述进行操作,大概就能如下所示编译出静态库了。前九个步骤还是好操作的,第十个花时间,如果使用,可以移步这里。这是我调整好的代码。
安装上述方式编译,得到windows环境下动态库,使用方式可以参考如下。首先新建QRCode属性表,如下所示:
配置包含目录及库目录,如下:
最后配置附加依赖项,如下:
本人进行二次封装后,使用效果如下: