【swift】ios中生成二维码

ios开发中可以自己代码生成二维码,需要使用到一个框架 CoreImage

CoreImage框架可以做滤镜,Gif动图,二维码等

先看效果图

下面直接贴上代码(OC也是下面一样的流程)

 

 1 func createQRCode(){
 2     
 3         //建立一个滤镜
 4         let qrFilter = CIFilter(name: "CIQRCodeGenerator")
 5         //重设滤镜的初始值
 6         qrFilter.setDefaults()
 7         //通过KVC设置滤镜的内容(需要将字符串转为二进制数据)
 8         qrFilter.setValue("我是二维码".dataUsingEncoding(NSUTF8StringEncoding, allowLossyConversion: true), forKey: "inputMessage")
 9         //输出图像(注意,此时生成的二维码尺寸为23*23左右,不清晰)
10         let ciImage = qrFilter.outputImage
11         
12         
13         //进一步处理,使用另外一个滤镜--单色,形变滤镜
14         let colorFilter = CIFilter(name: "CIFalseColor")
15         //重设滤镜的初始值
16         colorFilter.setDefaults()
17         //开始处理不清楚的图片
18         colorFilter.setValue(ciImage, forKey: "inputImage")
19         //设置前景色(注意只能用CIColor,使用UIColor会奔溃)
20         colorFilter.setValue(CIColor(red: 0, green: 0, blue: 0), forKey: "inputColor0")
21         //设置背景色
22         colorFilter.setValue(CIColor(red: 1, green: 1, blue: 1), forKey: "inputColor1")
23         //放大图片,放大五倍
24         let transform = CGAffineTransformMakeScale(5, 5)
25         //放大
26         let transformIamge = colorFilter.outputImage.imageByApplyingTransform(transform)
27         
28         
29         //用一个imageView接受图片试试效果哈(注意将CIImage转成UIImage)
30         QRCodeView.image =  UIImage(CIImage: transformIamge)
31 
32     }

执行这段代码的效果图就是上面展示的图片啦~

 

转载于:https://www.cnblogs.com/haojuncong/p/4507223.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值