iOS二维码生成与扫描

iOS二维码生成与扫描(zbar和原生AVFoundation) 公司iOS项目需要用到二维码扫描,本来已经有人写好了,但是扫描速度不太快,于是让我接手研究一下。之前也没接触过二维码扫描,写这篇博客献给新手。 先来二维码生成吧,二维码生成需要libqrencode库,将libqrencode库下载下来拖入工程(文章末会提供下载链接),在QRCodeGenerator.h中#import ,否则会报错。 使用举例:UIImage *image =[QRC 阅读详情
如今二维码随处可见,无论是实物商品还是各种礼券都少不了二维码的身影。而手机等移动设备又成为二维码的一个很好的应用平台,不管是生成二维码还是扫码二维码。

下面介绍一下如何在苹果iOS设备上使用二维码:


1. 扫描二维码(解码)
扫描二维码的开源库有很多如 ZBar、ZXing等。在此以ZBar作为例子构建二维码扫码应用。
首先在github上下载ZBar SDK
地址https://github.com/bmorton/ZBarSDK
打开压缩包,其中有ZBarSDK 文件夹
将ZBarSDK 文件夹包含到项目中来
(Finder)
(XCode)
其中包含一个libzbar.a的静态库
接着往项目中添加Framework框架及链接库(动态库、静态库)。在项目属性TARGETSSummary 中找到Linked Frameworks and Libraries
添加
AVFoundation.framwork, CoreMedia.framework, CoreVideo.framework, libiconv.dylib 和libzbar.a (如图)



然后在使用的地方引入头文件
#import "ZBarSDK.h"
调用ZBar的类必须实现ZBarReaderDelegate协议
如:UIViewController <ZBarReaderDelegate>
在- (void) imagePickerController: (UIImagePickerController*) reader
didFinishPickingMediaWithInfo: (NSDictionary*) info
最后在协议方法中通过info获取结果值
  1. id<NSFastEnumeration> results = [info objectForKey: ZBarReaderControllerResults];  
  2. ZBarSymbol *symbol = nil;  
  3. for(symbol in results)  
  4. // EXAMPLE: just grab the first barcode   
  5. break;  
  6.   
  7. // EXAMPLE: do something useful with the barcode data  
  8. resultText.text = symbol.data;  
  1. id<NSFastEnumeration> results = [info objectForKey: ZBarReaderControllerResults];  
  2. ZBarSymbol *symbol = nil;  
  3. for(symbol in results)  
  4. // EXAMPLE: just grab the first barcode  
  5. break;  
  6.   
  7. // EXAMPLE: do something useful with the barcode data  
  8. resultText.text = symbol.data;  

文档地址http://zbar.sourceforge.net/iphone/sdkdoc/
二维码开源库ZXing的加载过程与此类似,但是ZXing默认并不支持一维码的扫描,而ZBar是支持的。

2. 生成二维码(编码)
在生成二维码的库中QREncoder 比较好用。ZXing库的android版本是带java版的编码库的但不知为何没有C++版的解码库,故在ios上也没法解码,如果应用中既要生成二维码又要扫描二维码就有可能要带两套不同的库。
首先同样是在github 上下载到SDK库
地址https://github.com/jverkoey/ObjQREncoder
解压后将源码库直接包含到项目中来(如图)



设置头文件路径,在TARGET中building settings  Search Path

当然也可以直接将库编译成静态库libQREcoder.a然后在包含进来

接着在Frameworks 中添加静态库的引用



然后在使用该库的地方包含头文件
#import <QREncoder/QREncoder.h>
注意:二维码显示的时候有可能会因为图像的大小而做调整,所以需要包含系统库QuartzCore.framework
最后就可以调用编码库了:
  1. UIImage* image = [QREncoder encode:@"http://www.baidu.com/"];  
  1. UIImage* image = [QREncoder encode:@"http://www.baidu.com/"];  



http://code4app.com/ios/%E4%BA%8C%E7%BB%B4%E7%A0%81%E6%89%AB%E6%8F%8F%E5%92%8C%E7%94%9F%E6%88%90/501a70f16803fa1c73000000/

Swift实现iOS二维码扫描与生成的详细指南 二维码是一种可以存储信息的矩阵型条码,它通过黑白方块的不同组合来编码数据。二维码广泛应用于物流追踪、支付、个人名片交换等领域,因其高效的信息编码和读取方式而受到青睐。CoreImage是iOS平台上用于图像处理的框架,提供了一组丰富的图像滤镜和图像分析工具。它让开发者能够快速实现各种复杂的图像处理效果,例如图像的滤镜、颜色调整、变形、绘制等。CoreImage框架的主要特点包括:- 高效:经过优化的性能,能够在不牺牲质量的情况下,快速处理图像。 阅读详情

相关推荐

JB_ZBarSDK_Demo:通过ZBar SDK,实现IOS扫描、生成二维码的功能

JB_ZBarSDK_Demo Overview 通过ZBar SDK,实现IOS扫描二维码的功能。Demo介绍了ZBar常规的扫描二维码方式,同时可以自定义扫描二维码界面,并且可以生成二维码。 一、常规的扫描二维码方式 二、自定义扫描二维码 三、生成二维码

在iOS上实现二维码功能

如今二维码随处可见,无论是实物商品还是各种礼券都少不了二维码的身影。而手机等移动设备又成为二维码的一个很好的应用平台,不管是生成二维码还是扫码二维码。 下面介绍一下如何在苹果iOS设备上使用二维码: 1. 扫描二维码(解码) 扫描二维码的开源库有很多如 ZBar、ZXing等。在此以ZBar作为例子构建二维码扫码应用。 首先在github上下载ZBar SDK 地址https:/

风云的专栏 1万+

ZBAR 扫描DEMO

ZBarReaderView 自定义扫描区域 scanCrop,

【免费下载】 探索AVnight:一款高效、安全的夜间驾驶助手

探索AVnight:一款高效、安全的夜间驾驶助手 AVnight 是一个开源的夜间驾驶解决方案,旨在通过先进的计算机视觉技术和机器学习算法,提高夜间行车的安全性和舒适性。该项目在GitCode上开源,鼓励开发者们参与贡献和改进。 项目简介 AVnight的核心是一个实时的图像增强引擎,它能够改善夜间驾驶时的视线条件。通过对摄像头捕获的视频流进行处理,它可以增强道路细节,减低眩光,并优化颜色对比,从...

gitblog_00002的博客 6万+

iOS集成ZBarSDk-demo

简单的使用zbar进行二维码扫描的演示,可以参考学习,oc

IOS应用源码Demo-二维码扫描应用demo-毕设学习.zip

前两年IOS应用源码-主要是用于毕业设计学习的。

iOS二维码扫描 原生API 源码Demo 2016最新版本 简单易用

iOS中的二维码扫描,ZXing, ZBar库不更新了,本博主,所以今天写了一个二维码扫描库,是最新版本的,兼容iOS7.0及以后的系统,主要用Objective-C写的现测试已完美通过Xcode 7.3的IDE和iOS 7.0及以后的系统,识别率相当高以后准备在写一个Swift版本的有兴趣的小伙伴一定要试试哦先看效果图   Github上的名称 点击打开链接 点击打开链接本库完全使用的是系统AP...

VictorZhang 7092

IOS应用源码——二维码扫描应用demo.rar

IOS应用源码——二维码扫描应用demo.rar

iOS经典讲解之实现扫描二维码ZBarSDK的使用

ZBarSDK,一个比较优秀的开源项目,使用起来也很简单。 ZBarSDK是一个开源的SDK,可从这里下载到源码,该SDK实现了识别和读取各种条形码,包括EAN-13/UPC-A, UPC-E, EAN-8, Code 128, Code 39, Interleaved 2 of 5 和 QR Code。 帮助文档:http://zbar.sourceforge.net/iphone/

刘新林的技术博客 4443

IOS应用源码Demo-用摄像头进行条码扫描识别-毕设学习.zip

前两年IOS应用源码-主要是用于毕业设计学习的。

影刀初级考试操作题2

题型E主要考察了Excel的操作,总体上难度不大,流程也很少。有些细节地方比如是追加还是覆盖,多试几次就没问题了。

weisili2012的博客 1万+

iOS中 扫描二维码/生成二维码详解

指示根视图: [objc] view plaincopy self.window.rootViewController = [[UINavigationController alloc]initWithRootViewController:[SecondViewController new]];   生成二维码:

xiaobo0134的专栏 3528

Unity URP项目里Post Processing死活没效果?别慌,这5个坑我帮你踩过了

本文详细解析了Unity URP项目中Post Processing效果失效的五大常见问题,包括渲染管线配置冲突、Volume作用域误判、摄像机参数漏配、Layer层级冲突和Profile引用异常。通过实际项目案例和代码示例,提供专业级解决方案,帮助开发者快速排查并修复后处理效果不生效的问题。

weixin_33721427的博客 333

iOS系统自带二维码的生成以及扫描

此文档用于集成iOS系统自带的二维码扫描功能,下方包含一个github上别人写好的一个demo,在此引用,也方便自己以后查看 https://github.com/JustKeepRunning/LXDScanQRCode.git

qq_32150681的博客 3197

基于Matlab/Simulink的三相并网逆变器dq阻抗扫频仿真与理论建模实践指南

本文详细介绍了基于Matlab/Simulink的三相并网逆变器dq阻抗扫频仿真与理论建模实践方法。通过搭建仿真模型、设计扰动注入策略和FFT分析,精确提取阻抗特性,有效预测系统稳定性,为新能源并网系统设计提供可靠指导。

gold的博客 775

【Fluent】太阳辐射模型—Solar Ray Tracing

一、引言Fluent提供了一个太阳能负载模型,可用于计算进入计算域的太阳光线的辐射效应。该模型可以分为:太阳光线追踪和太阳辐照。其中太阳辐照需要使用DO或MC模型,直接向辐射模型提供外光束方向和强度参数。太阳光线追踪不限制辐射模型,可以独立于辐射方程使用,甚至可以在辐射模型off的情况下使用。本文主要介绍太阳光线追踪模型。该模型非常适用于以下领域汽车气候控制 (ACC) 应用建筑物中的人体热舒适建模应用该模型使用着色算法进行太阳光线追踪。光线会透过半透明的面加载在照射面上。

a5567899的博客 7586

iOS - 二维码生成、扫描及页面跳转

主要内容的介绍 普通二维码生成 彩色二维码生成 带有小图标二维码生成 扫描二维码的自定义 是否开启闪光灯 从相册中获取二维码 扫描成功之后提示音 扫描成功之后的界面之间的跳转 扫描二维码界面采取了微信二维码界面的布局 SGQRCode 集成 CocoaPods 导入 pod ‘SGQRCode’ 下载、拖拽 “SGQRCode” 文件夹到工程中 代码介绍 (详细使用,请参考 Demo) 在 info

prettyfei1123的博客 5436

【JavaSE】之流程控制与方法

Java基础之Java流程控制与方法相关知识介绍~

小新要变强的博客 5795

iOS 二维码扫描以及二维码生成

二维码扫描 在开发过程中,我们经常会遇到二维码扫描功能,下面是iOS原生扫描二维码的实现 类名:ScanViewController .h 文件 #import <UIKit/UIKit.h> #import <AVFoundation/AVFoundation.h> @interface ScanViewController : UIViewController<AVCaptureMetadataOutputObjectsDelegate,UIImagePick

WangQingLei0307的博客 721

SAP ABAP 如何实现物料主数据接口的增量传输机制?

如何实现物料主数据接口的增量传输机制?我在各客户系统中看到了五花八门的实现方式,即使是 IBM 实施的开发质量也并没有保证。其实这是一个很简单的问题,下面以物料主数据接口为例子,介绍 SAP 中更改文档对象的接口数据增量传输机制。

SAP李斌,本人承诺所有原创文章均不使用任何AI生成技术,请大家放心阅读。 1314

L2tp环境搭建笔记- Openwrt平台

本文使用3台openwrt设备, 分别搭建L2TP服务和2个客户端, 进行端到端验证和局域网组网,并分析搭建过程中涉及的默认路由( defaultroute) 配置问题。

十年通信老兵的技术修炼之路——从3G到5G,从地面基站到卫星通信。 3388

iOS之长按识别二维码/生成二维码/扫描二维码

参考:http://www.jianshu.com/p/997cec333822 参考:https://github.com/nglszs/BCQRcode 方式一:长按识别二维码 #import "LYBLongPressRecognizeEwmVC.h" #import "UIImageView+CreatCode.h" /** 补充的iOS9新特性*/ #import...

代码解释生活 2767

《驾驭你的AI同事:WorkBuddy深度精通》027:11.1 私有知识库接入

11.1 私有知识库接入 —— 《驾驭你的AI同事:WorkBuddy深度精通》系列图文教程,配图已统一为规范示意图。

LuckyHanMo的博客 135

使用iOS原生组件生成二维码和扫描识别二维码

iOS生成二维码和扫描识别二维码 1 .生成二维码 1).相关类: CIFilter 官方文档描述CIFilter类,是一个操作一个或多个图片来生成一个新的图片数据的图片处理器;CIFilter可以看做是一个滤镜,Apple提供了上百种的CIFilter,通过filterWithName:(NSString*)方法获取,CIFilter的种类可以从这里查看。 CIFIlter具有强大...

u011991690的博客 789

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

iOS系统原生二维码扫描与生成

iOS系统原生二维码代码 1.扫描识别各种类型的码 (条形码, 二维码 , 彩色码 等) 2.添加扫描视图的范围(中间框框) 3.开启和关闭闪光灯 4.识别相册中的二维码图片 5.生成二维码图片 先展示下效果图: 1. 二维码扫描识别 1.首先导入库文件 #import <AVFoundation/AVFoundation.h> 2.接着签订需要的代理, 并创建所需要的属性(这里我只讲述关键代码) AVCaptureMetadataOutputOb..

u013712343的博客 1148

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

iOS 二维码生成和扫描

二维码生成和扫描。

JMS_SJH的博客 834

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

上一篇: 位置识别编程指南
下一篇: 非Objc文件(c, c++)引起的NSObjCRuntime错误
focusjava
博客等级 码龄14年 127粉丝 528原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值