WP7 条码识别

条码基本知识

一维条码:UPC 、EAN

EAN-13 (European Article Numbering, Type=1),共13位数,由「国家代码」3位数,「厂商代码」4位数,「产品代码」5位数,以及「检查码」1位数组成。中国的国家代码为690-693。
clip_image001(清风面值编码)

EAN-8 (Type=2),共有8位数,包括国别码2位,产品代码5位,及检查码1位。当包装面积小於120平方公分以下无法使用标准码时,可以申请使用缩短码。

UPC (Universal Product Code, UPC-A Type=3, UPC-E Type=4),共有12位数,第一位区分编号系统,「厂商代码」5位数,「产品代码」5位数,以及「检查码」1位数组成,根据具体行业的不同,衍生A,B,C,D,E五个版本,主要用于美国和加拿大地区,从2005年开始,接受EAN-13作为其一个标准子集。
clip_image002

等等,还有很多类型,只不过这个最常用也最普遍。

二维条码:QR_CODE

QR Code (Type=99),1994年由日本Denso-Wave公司发明,可以包含2509个数字或者1520个ASCII字符。QR是英文Quick Response的缩写,即快速反应的意思,源自发明者希望QR码可让其内容快速被解码。Quick Response 牛逼之处就是超高速识别。。。
clip_image003

等等,还有很多类型,只不过这个最常用也最普遍。

条码技术点

用到了开源条码解析程序:Zxing二维码:http://silverlightzxing.codeplex.com/

Catch到ReaderException并做如下判断,实现一二维码自动切换识别

if (WP7BarcodeManager.ScanMode == BarcodeFormat.QR_CODE)

{

WP7BarcodeManager.ScanMode = BarcodeFormat.UPC_EAN;

this._barcodeReader = WP7BarcodeManager.GetReader();

}

else

{

WP7BarcodeManager.ScanMode = BarcodeFormat.QR_CODE;

this._barcodeReader = WP7BarcodeManager.GetReader();

}

这个比较恶,不过效果还不错,哈哈

附件源码是在Zxing基础上参考京东商城改的

其实市场里的我查查和京东商城的条码识别都是用的Zxing,只不过做了自己的封装

源码

posted @ 2012-05-16 10:51  Bryht  阅读(795)  评论(11编辑  收藏  举报