# ios 二维码、条形码 objective-c 版本 #### Swift Version 对应的swift版本请看 : **[swiftScan](https://github.com/MxABC/swiftScan)** ## 介绍 **iOS扫码封装 objective-c版本 封装ios系统API和ZXing** - 扫码界面效果封装 - 二维码、条形码 - 相册获取图片后识别 **模仿其他app** - 模仿QQ扫码界面 - 支付宝扫码框效果 - 微信扫码框效果 **其他设置参数自定义效果** - 扫码框周围区域背景色可设置 - 扫码框颜色可也设置 - 扫码框4个角的颜色可设置、大小可设置 - 可设置只识别扫码框内的图像区域 - 可设置扫码成功后,获取当前图片 - 动画效果选择: 线条上下移动、网格形式移动、中间线条不移动(一般扫码条形码的效果) - 如果好用请帮忙右上角 star 支持一下 # 安装 ### Installation with CocoaPods ```ruby platform :ios, '6.0' pod 'LBXScan',:git=>'https://github.com/MxABC/LBXScan.git' ``` ### 手动安装 下载后将LBXScan文件夹copy到工程中 添加预编译 pch文件 (如何添加请百度) 并在其中添加 ```objective-c #import #import ``` 否则编译会报许多错误 ### Demo测试 - xcode版本:xcode7.1 - 将工程下载下来,打开DemoTests中 LBXScanDemo.xcodeproj ### 使用 - LBXScanViewStyle:设置界面参数,具体各个参数请参看代码头文件 - LBXScanViewController:扫码界面基类控制器,实现基本的扫码功能、相册功能、闪光灯开启关闭、扫码框相关效果,其他提示语及界面请继承LBXScanViewController后添加 ####模仿qq界面效果 ```obj-c - (void)qqStyle { //设置扫码区域参数设置 //创建参数对象 LBXScanViewStyle *style = [[LBXScanViewStyle alloc]init]; //矩形区域中心上移,默认中心点为屏幕中心点 style.centerUpOffset = 44; //扫码框周围4个角的类型,设置为外挂式 style.photoframeAngleStyle = LBXScanViewPhotoframeAngleStyle_Outer; //扫码框周围4个角绘制的线条宽度 style.photoframeLineW = 6; //扫码框周围4个角的宽度 style.photoframeAngleW = 24; //扫码框周围4个角的高度 style.photoframeAngleH = 24; //扫码框内 动画类型 --线条上下移动 style.anmiationStyle = LBXScanViewAnimationStyle_LineMove; //线条上下移动图片 style.animationImage = [UIImage imageNamed:@"CodeScan.bundle/qrcode_scan_light_green"]; //SubLBXScanViewController继承自LBXScanViewController //添加一些扫码或相册结果处理 SubLBXScanViewController *vc = [SubLBXScanViewController new]; vc.style = style; vc.isQQSimulator = YES; [self.navigationController pushViewController:vc animated:YES]; } ``` ####自定义参数部分介绍 ```obj-c - (void)custom { //设置扫码区域参数 LBXScanViewStyle *style = [[LBXScanViewStyle alloc]init]; style.centerUpOffset = 44; //扫码框周围4个角的类型设置为在框的上面 style.photoframeAngleStyle = LBXScanViewPhotoframeAngleStyle_On; //扫码框周围4个角绘制线宽度 style.photoframeLineW = 6; //扫码框周围4个角的宽度 style.photoframeAngleW = 24; //扫码框周围4个角的高度 style.photoframeAngleH = 24; //显示矩形框 style.isNeedShowRetangle = YES; //动画类型:网格形式,模仿支付宝 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.colorRetangleLine = [UIColor colorWithRed:247/255. green:202./255. blue:15./255. alpha:1.0]; //非矩形框区域颜色 style.red_notRecoginitonArea = 247./255.; style.green_notRecoginitonArea = 202./255; style.blue_notRecoginitonArea = 15./255; style.alpa_notRecoginitonArea = 0.2; SubLBXScanViewController *vc = [SubLBXScanViewController new]; vc.style = style; //开启只识别矩形框内图像功能 vc.isOpenInterestRect = YES; [self.navigationController pushViewController:vc animated:YES]; } ``` # 界面效果 (加载速度慢,可刷新网页) ![image](https://github.com/MxABC/LBXScan/blob/master/ScreenShots/page1.png) ![image](https://github.com/MxABC/LBXScan/blob/master/ScreenShots/page2.png) ![image](https://github.com/MxABC/LBXScan/blob/master/ScreenShots/page3.png) ![image](https://github.com/MxABC/LBXScan/blob/master/ScreenShots/page11.png) ![image](https://github.com/MxABC/LBXScan/blob/master/ScreenShots/page4.png) ![image](https://github.com/MxABC/LBXScan/blob/master/ScreenShots/page5.png) ![image](https://github.com/MxABC/LBXScan/blob/master/ScreenShots/page6.png) ![image](https://github.com/MxABC/LBXScan/blob/master/ScreenShots/page7.png) ![image](https://github.com/MxABC/LBXScan/blob/master/ScreenShots/page8.png) ![image](https://github.com/MxABC/LBXScan/blob/master/ScreenShots/page9.png) ![image](https://github.com/MxABC/LBXScan/blob/master/ScreenShots/page12.png) ![image](https://github.com/MxABC/LBXScan/blob/master/ScreenShots/page10.png)