iOS 模仿微信扫描二维码放大功能
2018-02-12 09:09
483 查看
我们知道,微信扫描二维码过程中,如果二维码图片焦距比较远,会拉近焦距,实现放大功能。这种效果如何该实现,用原生的API又是如何实现。本文简单尝试如何使用AVFoundation实现放大二维码图片。重点是如何定位二维码和放大二维码,前面介绍了 iOS 扫描二维码实现手势拉近拉远镜头 iOS 识别过程中描绘二维码边框 和iOS 识别过程中描绘二维码边框 ,我们可以很简单的实现二维码定位和放大。
上面代码实现检测二维码边长小于150时,进行放大。具体可以根据需求设置,并实现二维码位置的调整。Git Demo
- (void)changeVideoScale:(AVMetadataMachineReadableCodeObject *)objc { NSArray *array = objc.corners; CGPoint point = CGPointZero; int index = 0; CFDictionaryRef dict = (__bridge CFDictionaryRef)(array[index++]); // 把点转换为不可变字典 // 把字典转换为点,存在point里,成功返回true 其他false CGPointMakeWithDictionaryRepresentation(dict, &point); NSLog(@"X:%f -- Y:%f",point.x,point.y); CGPoint point2 = CGPointZero; CGPointMakeWithDictionaryRepresentation((__bridge CFDictionaryRef)array[2], &point2); NSLog(@"X:%f -- Y:%f",point2.x,point2.y); CGFloat scace =150/(poi 4000 nt2.x-point.x); //当二维码图片宽小于150,进行放大 if (scace > 1) { [self setVideoScale:scace]; } return; }
上面代码实现检测二维码边长小于150时,进行放大。具体可以根据需求设置,并实现二维码位置的调整。Git Demo
相关文章推荐
- iOS 原生态扫描二维码、条形码的功能。
- iOS WebView 图片点击放大并左右滑动,类似微信/网易文章功能
- iOS实现二维码的扫描功能
- iOS开发之扫描二维码功能的实现
- 用ZBar实现IOS上二维码扫描功能
- 使用ZbarSDK实现扫描二维码以及条形码功能(iOS)
- 在Vue中调用微信的扫描二维码功能
- 微信连WiFi关注公众号流程更新 解决ios微信扫描二维码不关注就能上网的问题
- iOS 原生态API实现二维码的扫描功能
- 仿微信的二维码登录功能:客户端登录后,通过扫描web端页面上的二维码,实现同一用户在web端的登录
- java微信扫描公众号二维码实现登陆功能
- iOS之使用ZbarSDK实现扫描二维码以及条形码功能
- Android开发实现模仿360二维码扫描功能实例详解
- IOS上原生代码实现二维码扫描功能
- iOS自带的二维码扫描功能
- [IPHONE] iOS使用ZbarSDK实现扫描二维码以及条形码功能
- IOS 对于ios7扫描二维码功能的实现
- iOS开发 - 微信扫描二维码登录网页的原理
- iOS中使用ZBar扫描二维码自定义扫描界面功能
- 在js中调用微信的扫描二维码功能