项目标题:LBXScan-一个iOS系统的二维码和条形码扫描器
项目简介
LBXScan是一个用于iOS系统的二维码和条形码扫描器。它对iOS系统AVFoundation扫码进行了封装,同时也涉及ZXing、ZBar相关内容,并且对扫码界面效果进行了封装。支持多种功能,如系统API及ZXing支持界面动态横竖屏旋转、设置扫码对象接口、正确显示相机预览、连续扫码(可通过参数设置)等。还可以进行参数自定义,像设置扫码框周围区域背景色、扫码框颜色、扫码框4个角的颜色、大小等,也能设置只识别扫码框内的图像区域、扫码成功后获取当前图片动画效果选择等。它还能模仿其他app(如QQ、支付宝、微信的扫码界面效果)。
项目安装
可以使用CocoaPods进行安装。能够独立安装某一功能,例如ZXing已经下载到本工程,解决之前版本下载速度慢的问题。可以按以下方式分组安装:
安装所有库包括UI(不包含ZBar):pod ‘LBXScan’,’>2.5’。
只安装系统原生API封装库:pod ‘LBXScan/LBXNative’,’>2.5’。
只安装ZXing封装库:pod ‘LBXScan/LBXZXing’,’>2.5’。
只安装ZBar封装库:pod ‘LBXZBarSDK’,’>1.3’。
只安装UI:pod ‘LBXScan/UI’,’~>2.5’。
也可以安装任意组合。
项目中的示例代码
例如在DIY参数设置方面,有代码示例:
-(LBXScanViewStyle)DIY{ //设置扫码区域参数 LBXScanViewStylestyle = [[LBXScanViewStyle alloc]init]; //扫码框中心位置与View中心位置上移偏移像素(一般扫码框在视图中心位置上方一点) style.centerUpOffset = 44; //扫码框周围4个角的类型设置为在框的上面,可自行修改查看效果 style.photoframeAngleStyle = LBXScanViewPhotoframeAngleStyle_On; //扫码框周围4个角绘制线段宽度 style.photoframeLineW = 6; //扫码框周围4个角水平长度 style.photoframeAngleW = 24; //扫码框周围4个角垂直高度 style.photoframeAngleH = 24; //动画类型:网格形式,模仿支付宝 style.anmiationStyle = LBXScanViewAnimationStyle_NetGrid; //动画图片:网格图片 style.animationImage = [UIImage imageNamed:@”CodeScan.bundle/qrcode_scan_part_net”];; //扫码框周围4个角的颜色 style.colorAngle = [UIColor colorWithRed:65./255.green:174./255.blue:57./255.alpha:1.0]; //是否显示扫码框 style.isNeedShowRetangle = YES; //扫码框颜色 style.colorRetangleLine = [UIColor colorWithRed:247/255.green:202./255.blue:15./255.alpha:1.0]; //非扫码框区域颜色(扫码框周围颜色,一般颜色略暗) //必须通过[UIColor colorWithRed:green:blue:alpha:]来创建,内部需要解析成RGBA style.notRecoginitonArea = [UIColor colorWithRed:0 green:0 blue:0 alpha:0.6]; return style; }
在扫码控制器使用方面也有示例,如基类控制器LBXScanBaseViewControllerNative(原生扫码)、扫码控制器LBXScanNativeViewController、QQScanNativeViewController等,并且对于不同库(如ZXing、ZBar)都有对应的扫码控制器。如果使用LBXScanViewController(包含在UI模块中),需要在工程中添加预编译头文件xx.pch文件或对应调用的地方添加对应的宏。
项目总结
LBXScan是一个功能丰富的iOS二维码和条形码扫描器项目,在扫码功能的实现以及界面效果的定制方面提供了很多的便利。无论是开发人员想要快速集成扫码功能,还是对扫码界面进行个性化定制,都可以参考这个项目。欢迎各位粉丝在评论区留言,分享你们对于这个项目的看法或者使用经验。