84669 personnes étudient
152542 personnes étudient
20005 personnes étudient
5487 personnes étudient
7821 personnes étudient
359900 personnes étudient
3350 personnes étudient
180660 personnes étudient
48569 personnes étudient
18603 personnes étudient
40936 personnes étudient
1549 personnes étudient
1183 personnes étudient
32909 personnes étudient
就是类似zbarsdk中哦个ZBarReaderView的scanCrop属性,找了半天文档了,不知道有没有什么方法实现
看了这片文章你就会了,很简单,你想要的全屏扫描效果
http://www.appcoda.com/qr-code-ios-programming-tutorial/
专门注册账户来回答这个问题,题注应该好好看看文档的,我就是因为信你找了半天没找到,才没有去看文档,(同时也怪我看帖子不仔细,才浪费了大量时间,其实早就看到《IOS二维码扫描,你需要注意的两件事》这篇文章),今天早上突然看了下文档才找到的,rectOfInterest属性。 解决方法: _output = [[AVCaptureMetadataOutput alloc]init]; CGSize size = self.view.bounds.size; CGRect cropRect = CGRectMake(50, 160, 220, 220); CGFloat p1 = size.height/size.width; CGFloat p2 = 1920./1080.; //使用了1080p的图像输出 if (p1 < p2) { CGFloat fixHeight = self.view.bounds.size.width * 1920. / 1080.; CGFloat fixPadding = (fixHeight - size.height)/2; _output.rectOfInterest = CGRectMake((cropRect.origin.y + fixPadding)/fixHeight, cropRect.origin.x/size.width, cropRect.size.height/fixHeight, cropRect.size.width/size.width); } else { CGFloat fixWidth = self.view.bounds.size.height * 1080. / 1920.; CGFloat fixPadding = (fixWidth - size.width)/2; _output.rectOfInterest = CGRectMake(cropRect.origin.y/size.height, (cropRect.origin.x + fixPadding)/fixWidth, cropRect.size.height/size.height, cropRect.size.width/fixWidth); }
参考: IOS二维码扫描,你需要注意的两件事 http://blog.cnbluebox.com/blog/2014/08/26/ioser-wei-ma-sao-miao/
01.很简单,有一个在这个ViewController上绘制界面的函数的,在界面上面添加上边框,只留出那么一块就好了,弊端在于有时候二维码显示在框内也可以识别,怪怪的,但是也无妨;
02.麻烦一点,就是把这个ViewController放进别的ViewController中;
看了这片文章你就会了,很简单,你想要的全屏扫描效果
http://www.appcoda.com/qr-code-ios-programming-tutorial/
专门注册账户来回答这个问题,题注应该好好看看文档的,我就是因为信你找了半天没找到,才没有去看文档,(同时也怪我看帖子不仔细,才浪费了大量时间,其实早就看到《IOS二维码扫描,你需要注意的两件事》这篇文章),今天早上突然看了下文档才找到的,rectOfInterest属性。
解决方法:
_output = [[AVCaptureMetadataOutput alloc]init];
CGSize size = self.view.bounds.size;
CGRect cropRect = CGRectMake(50, 160, 220, 220);
CGFloat p1 = size.height/size.width;
CGFloat p2 = 1920./1080.; //使用了1080p的图像输出
if (p1 < p2) {
CGFloat fixHeight = self.view.bounds.size.width * 1920. / 1080.;
CGFloat fixPadding = (fixHeight - size.height)/2;
_output.rectOfInterest = CGRectMake((cropRect.origin.y + fixPadding)/fixHeight,
cropRect.origin.x/size.width,
cropRect.size.height/fixHeight,
cropRect.size.width/size.width);
} else {
CGFloat fixWidth = self.view.bounds.size.height * 1080. / 1920.;
CGFloat fixPadding = (fixWidth - size.width)/2;
_output.rectOfInterest = CGRectMake(cropRect.origin.y/size.height,
(cropRect.origin.x + fixPadding)/fixWidth,
cropRect.size.height/size.height,
cropRect.size.width/fixWidth);
}
01.很简单,有一个在这个ViewController上绘制界面的函数的,在界面上面添加上边框,只留出那么一块就好了,弊端在于有时候二维码显示在框内也可以识别,怪怪的,但是也无妨;
02.麻烦一点,就是把这个ViewController放进别的ViewController中;