iPhone ZBar库 中文乱码解决方法
来源:互联网 发布:java购物车生成订单 编辑:程序博客网 时间:2024/05/18 00:49
zbar下载主页,有源码
http://zbar.hg.sourceforge.net/hgweb/zbar
http://sourceforge.net/p/zbar/code/ci/default/tree/
或者:http://download.csdn.net/detail/ydj213/4810522
原文地址:http://blog.sitetuan.com/index.php/2012/05/21/iphone-zbar库-中文乱码解决方法/
iPhone 下可以使用的 一维码、二维码 开源库有 ZXing 和 ZBar ,其中 zxing 主要是针对 Android 系统开发的,对 iPhone 支持很弱,所以 ZBar 是 iPhone 下最好的选择。
ZBar 有个问题,对于中文二维码的支持经常出现乱码。ZBar 缺省支持 SHIF-JIS, UTF-8, ISO8859-1 ,但是不支持 GB18030,而很多生成的二维码都是 GB18030 (或者 GBK, GB2312)的,所以 ZBar 解码出来就直接乱码了,最近开发 回首二维码 就遇到了这个问题。(回首二维码 下载)
这个修改其实很简单,只需要修改一个文件就可以了,见下面代码。
zbar/qrcode/qrdectxt.c
int qr_code_data_list_extract_text(const qr_code_data_list *_qrlist, zbar_image_scanner_t *iscn, zbar_image_t *img){ iconv_t sjis_cd; iconv_t utf8_cd; iconv_t latin1_cd; const qr_code_data *qrdata; int nqrdata; unsigned char *mark; int ntext; int i; qrdata=_qrlist->qrdata; nqrdata=_qrlist->nqrdata; mark=(unsigned char *)calloc(nqrdata,sizeof(*mark)); ntext=0; /*This is the encoding the standard says is the default.*/ // 重点在这里,我们不要 ISO8859-1,直接换成 GB18030 就可以了 //latin1_cd=iconv_open("UTF-8","ISO8859-1"); latin1_cd=iconv_open("UTF-8","GB18030"); /*But this one is often used, as well.*/ sjis_cd=iconv_open("UTF-8","SJIS"); /*This is a trivial conversion just to check validity without extra code.*/ utf8_cd=iconv_open("UTF-8","UTF-8");
latin1_cd=iconv_open("UTF-8","ISO8859-1");sjis_cd=iconv_open("UTF-8","GB2312");utf8_cd=icon_open("UTF-8","UTF-8");
- iPhone ZBar库 中文乱码解决方法
- iPhone ZBar库 中文乱码解决方法
- iPhone ZBar库 中文乱码解决方法
- iPhone ZBar库 中文乱码解决方法--重新编译libzbar.a
- iPhone ZBar库 中文乱码解决方法--重新编译libzbar.a
- iPhone ZBar库 中文乱码解决方法--重新编译libzbar.a 请勿转载
- zBar解码中文乱码
- zbar中文乱码的解决
- zbar 解决中文乱码问题
- Zbar IOS 解决中文乱码
- iOS开发-zbar解析中文乱码情况
- android zbar二维码扫描(中文不乱码)
- MinGW编译Zbar修复中文乱码
- iphone 上面一维码,二维码 zxing,zbar 最终乱码解决问题
- iphone safari 中文乱码
- iOS 使用Zbar 二维码扫描的时候, 出现中文乱码
- zbar在win7下的编译及中文乱码解决
- JbuilderX中文乱码解决方法
- 常用的MYsql语句
- 你最需要了解的H3C交换机端口安全模式
- javascript之Array 对象(数组对象)
- 调用MSBuild打Website的部署zip包
- 根据context得到包名及主Activity
- iPhone ZBar库 中文乱码解决方法
- OpenStack学习笔记————OneStack:一键自动部署 OpenStack
- vfs学习
- 第二十一届国际C语言混乱代码大赛结果公布
- git/github学习笔记
- oprofile setup
- Role Transitions for Data Guard Configurations Using Mixed Oracle Binaries [ID 414043.1]
- delphi操作png的单元pngimage.pas包括引用的ZlibExApi.pas和 PngLang.pas
- 原型模式代码