|
知识路径: > 电子商务系统程序设计基础 > 电子商务系统建设 > 电子商务系统组件设计 >
|
相关知识点:19个
|
|
|
|
目前,常见的二维码都是以QR码作为编码的码制,它是在一个矩形空间内,通过黑、白像素在矩阵中的不同分布来进行编码的。它比传统的Bar Code条形码能存更多的信息,也能表示更多的数据类型。
|
|
|
App扫码设计主要解决二维码扫描、闪光灯开启、本地二维码图片识别、二维码生成这几个关键问题。目前,App扫码设计开发最常用的开源框架是zxing和zbar。
|
|
|
|
zxing的内核采用C++编写,是Google推出的用来识别多种格式条形码的开源项目,项目地址为https://github.com/zxing/zxing。zxing目前持续在维护,支持Java、C#、Ponthy等主流编程语言,也是目前还在维护的较受欢迎的二维码扫描开源项目之一。
|
|
|
|
zbar的内核用C来编写,速度极快,运行速度大概是zxing的4~5倍。zbar推出了iPhone的SDK和Android的相关调用方法(JNI),在Andriod和iPhone上运行效率很高。但是相对zxing而言,zbar项目已经多年没有开发人员维护,项目地址为https://github.com/ZBar/ZBar。
|
|
|
|
.zxing支持更多的码制:datamatix、PDF417等,zbar不能很好支持PDF417(但是在源码中有对于PDF417码的处理)。
|
|
|
.zxing的执行解码效率低于zbar,从耗费内存空间角度看,zbar更适合嵌入式设备开发,大部分手机App的解码采用的是zxing,因为zxing当初就是面向Android开发。
|
|
|
.zbar和zxing两者都不能很好地支持条码扫描,在摄像头分辨率低、目标条码打印在曲面上或者目标条码密集或扫描角度非垂直的情况下,很难识别条形码,且条码扫描会产生误读,这种致命缺点致使激光扫描头仍然为条码识读领域的工业级设备。
|
|
|
.zxing在解码运算中执行的浮点运算非常耗时,一般不支持浮点运算的CPU在做图像处理方面会严重延时。
|
|
|
.两者在扫描QR码方面基本没有什么差异,都能准确快速地接触码值。
|
|
|