Swift-一步步实现二维码的生成

ios生成二维码我们需要用到这个CIFilter类,这个类有很多的Filters,而用CIQRCodeGenerator,看一下文档是怎么说的:

Generates a Quick Response code (two-dimensional barcode) from input data.

Localized Display NameCIQRCodeGenerator

Swift-一步步实现二维码的生成_第1张图片
图1

再看inputMessage输入源是一个NSData对象,inputCorrectionLevel是输入源的修正参数。

再来看这个inputCorrectionLevel的具体的说明:inputCorrectionLevel参数控制量输出图像提供额外的数据编码的纠错。更高水平的纠错导致更大的输出图像但允许更大的地区代码损坏或模糊。有四种可能的修正模式(与相应的错误恢复能力水平)

Swift-一步步实现二维码的生成_第2张图片
图2

好的现在我们去用代码来生成二维码吧

Swift-一步步实现二维码的生成_第3张图片
图3

好的现在一步步来讲解,data要这样生成qrStr.data(using: .isoLatin1),如图4所示。

 setDefaults将所有输入设置为默认值,

图4

再看颜色的设置,其中inputColor0是内容的颜色即为二维码的颜色,inputColor1是背景的颜色,我这里设置二维码是黑色背景是白色的。

Swift-一步步实现二维码的生成_第4张图片
图5

最后得到的outputImage是CIImage?类型,所以还需要转成UIImage

Swift-一步步实现二维码的生成_第5张图片
图6

github

好的暂时先这样,后续再更新。

你可能感兴趣的:(Swift-一步步实现二维码的生成)