【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     }

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

时间: 2024-10-01 20:51:30

【swift】ios中生成二维码的相关文章

ios 中生成二维码和相册中识别二维码

iOS 使用CIDetector扫描相册二维码.原生扫描 原生扫描 iOS7之后,AVFoundation让我们终于可以使用原生扫描进行扫码了(二维码与条码皆可)AVFoundation可以让我们从设备中获取到输入流与输出流,从而获取二维码中包含的信息. 实现原生扫描非常简单.1.先导入AVFoundation框架.<AVFoundation/AVFoundation.h>2.接着设置代理,实现代理回调方法AVCaptureMetadataOutputObjectsDelegate3.然后创建

JAVA中生成二维码图片的方法

JAVA中生成二维码的方法并不复杂,使用google的zxing包就可以实现.下面的方法包含了生成二维码.在中间附加logo.添加文字功能. 一.下载zxing的架包,并导入项目中,如下: 最主要的包都在com.google.zxing.core下.如果是maven项目,maven依赖如下: 1 <dependency> 2 <groupId>com.google.zxing</groupId> 3 <artifactId>core</artifact

在.net core web项目中生成二维码

原文:在.net core web项目中生成二维码 1.添加QRCoder包引用 2. public IActionResult MakeQrCode()        { string url="https://www.baidu.com"; var generator = new QRCodeGenerator(); var codeData = generator.CreateQrCode(str,QRCodeGenerator.ECCLevel.M,true); var qrc

iOS中 扫描二维码/生成二维码详解 韩俊强的博客

最近大家总是问我有没有关于二维码的demo,为了满足大家的需求,特此研究了一番,希望能帮到大家! 每日更新关注:http://weibo.com/hanjunqiang  新浪微博 指示根视图: self.window.rootViewController = [[UINavigationController alloc]initWithRootViewController:[SecondViewController new]]; 每日更新关注:http://weibo.com/hanjunqi

ios如何生成二维码

ios 7以后 系统为我们集成了生成二维码和读取功能,我们可以使用系统自带的框架 来进行二维码的相关操作. 框架CoreImage框架(该框架可以做毛玻璃效果),通过滤镜CIFilter生成二维码 . 生成二维码步骤: 包含库头文件 import <CoreImage/coreImage.h> 1, 创建过滤器 CIFilter *filter = [CIFilter  filterWithName:@"CIQRCodeGenerator"]; 2,  恢复默认设置 [fi

.net在网页中生成二维码和条形码

二维码: 1.下载ThoughtWorks.QRCode.dll文件 2.创建Web项目,添加引用刚才下载的文件 3.在项目中添加aspx窗体,编写代码如下 <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="SAOMADemo.aspx.cs" Inherits="_0729Test.SAOMADemo" %> <!DOCTYPE html&g

系统中生成二维码

平台使用方式:先将把2个DLL文件(FWFramework.Client.QRCode.dll,ThoughtWorks.QRCode.dll)拷贝到客户端目录.文件下载:http://bbs.delit.cn/forum.php?mod=attachment&aid=NjM5fDM0YmRhZGU1fDE0NDg4Njk3NjR8MHwzNzk%3D 1.生成二维码'实例化(类似NEW)dim qrcode=LoadAssembly("FWFramework.Client.QRCode

vue 中生成二维码之爬坑之路

最近在做vue中项目,有个需求是在你提交信息后把后台返给你的链接生成二维码. 一共使用了两种生成二维码的方法 1.vue-qr 这个是在一进入页面直接生成二维码,具体介绍见文档:https://www.npmjs.com/package/vue-qr; 2.qrcode 这个可以,符合我的要求 tempalte: <canvas id="canvas" ></canvas> script: 引入: import VueQr from 'qrcode' 组件: c

Swift 快速生产生成二维码

1 // 生成二维码 2 final class QRGenerator { 3 static func generate(from string: String) -> UIImage? { 4 let context = CIContext() 5 // let data = string.data(using: String.Encoding.ascii) 6 let data = string.data(using: String.Encoding.utf8) 7 8 if let fi