一、二维码的生成
- 从iOS7开始集成了二维码的生成和读取功能
- 此前被广泛使用的ZBarSDK 目前不支持64位处理器,除此之外还有ZXingSDK也可以生成二维码
- 生成二维码的步骤
- 导入CoreImage框架
- 通过滤镜CIFilter生成二维码
- 二维码的内容(传统的条形码只能放数字)
- 纯文本
- 名片
- URL(可直接跳转网页)
- 二维码生成的具体代码
-
- (void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event { //创建过滤器 CIFilter *filter = [CIFilter filterWithName:@"CIQRCodeGenerator"]; //过滤器恢复默认 [filter setDefaults]; //给过滤器添加数据 NSString *string = @"http://www.cnblogs.com/PSSSCode/"; //将NSString格式转化成NSData格式 NSData *data = [string dataUsingEncoding:NSUTF8StringEncoding allowLossyConversion:YES]; [filter setValue:data forKeyPath:@"inputMessage"]; //获取二维码过滤器生成的二维码 CIImage *image = [filter outputImage]; //将获取到的二维码添加到imageview上 self.imageView.image =[UIImage imageWithCIImage:image];
- 从上图可以看出生成的二维码模糊不清晰,在上面代码块最后一步换成调用下面代码块中的方法即可