美文网首页
二维码生成和扫描

二维码生成和扫描

作者: 笑里剑 | 来源:发表于2017-05-05 10:15 被阅读0次

    第一部分:二维码生成

    关于二维码的生成有很多第三方插件,本次demo主要使用libqrencode来实现二维码生成

    需先导入头文件libqrencode/QRCodeGenerator.h

    二维码本质上来说是一张图片,所以先生成一张图片,以下为代码

    此时生成的只是一个UIImage对象,此后我们需要对该对象的大小进行调整,调整的尺度在于我们最终要显示的图片的大小(PS:一般而言二维码图片是一张正方形图片),以下为代码

    这个时候其实已经完成了二维码的生成,但是有些情况下我们可能觉得生成的二维码颜色不是很满意。如果你想自定义自己的二维码颜色,这个时候你需要对其进行颜色填充

    此时我们已经完成了二维码的生成工作

    第二部分:二维码的扫描

    二维码的扫描需要引入系统的AVFoundation/AVFoundation.h文件,同时需要遵守AVCaptureMetadataOutputObjectsDelegate协议。

    对于二维码的扫描比较简单,唯一需要注意的一点是关于扫码范围的限制。二维码识别范围是rectOfInterest这个CGRect类型的量,但是需要这个CGRect和我们平常使用的坐标系不同,苹果API是这么描述的

    大意是说这个变量是个比例尺度的变量,并且坐标系和我们平常使用的是相反。比如你想在坐标系统中将扫码范围定在(x,y,w,h)的位置,这时你在这个坐标系下要这么输入(y/H,x/W,h/H,w/W)�(PS:此处W是父容器的宽度,H是父容器的高度)。个人对于这个坐标的理解是正常坐标系统的镜像坐标

    如果诸位有啥不明白的可以看gitHub

    相关文章

      网友评论

          本文标题:二维码生成和扫描

          本文链接:https://www.haomeiwen.com/subject/wesktxtx.html