swift-生成二维码(可带图片)
来源:互联网 发布:李嘉诚跑路 知乎 编辑:程序博客网 时间:2024/05/01 12:51
import UIKit
class ViewController: UIViewController {
overridefunc viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
// 不带图片的二维码图片
let imageViewIcon1 =UIImageView(frame: CGRect(x:20, y: 20, width:150, height: 150))
imageViewIcon1.image =createQRForString("MR.G", qrImageName:"")
self.view.addSubview(imageViewIcon1)
// 带图片的二维码图片
let imageViewIcon2 =UIImageView(frame: CGRect(x:200, y: 20, width:150, height: 150))
imageViewIcon2.image =createQRForString("MR.G", qrImageName:"2")
self.view.addSubview(imageViewIcon2)
}
overridefunc didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
func createQRForString(qrString:String?, qrImageName: String?) ->UIImage? {
iflet sureQRString = qrString {
let stringData = sureQRString.dataUsingEncoding(NSUTF8StringEncoding, allowLossyConversion: false)
// 创建一个二维码的滤镜
let qrFilter =CIFilter(name: "CIQRCodeGenerator")
qrFilter?.setValue(stringData, forKey:"inputMessage")
qrFilter?.setValue("H", forKey:"inputCorrectionLevel")
let qrCIImage = qrFilter?.outputImage
// 创建一个颜色滤镜,黑白色
let colorFilter =CIFilter(name: "CIFalseColor")
colorFilter?.setDefaults()
colorFilter?.setValue(qrCIImage, forKey:"inputImage")
// 二维码颜色
colorFilter?.setValue(CIColor(red:1, green: 1, blue:1), forKey: "inputColor0")
// 二维码背景色
colorFilter?.setValue(CIColor(red:0, green: 0, blue:0), forKey: "inputColor1")
// 返回二维码image
let codeImage =UIImage(CIImage: colorFilter!.outputImage!.imageByApplyingTransform(CGAffineTransformMakeScale(5,5)))
// 通常,二维码都是定制的,中间的都会放想要表达意思的图片
iflet iconImage = UIImage(named: qrImageName!) {
let rect =CGRect(x: 0, y:0, width: codeImage.size.width, height: codeImage.size.height)
UIGraphicsBeginImageContext(rect.size)
codeImage.drawInRect(rect)
let avatarSize =CGSize(width: rect.size.width *0.25, height: rect.size.height
* 0.25)
let x = (rect.size.width - avatarSize.width) * 0.5
let y = (rect.size.height - avatarSize.height) * 0.5
iconImage.drawInRect(CGRect(x: x, y: y, width: avatarSize.width, height: avatarSize.height))
let resultImage =UIGraphicsGetImageFromCurrentImageContext()
UIGraphicsEndImageContext()
return resultImage
}
return codeImage
}
returnnil
}
}
- swift-生成二维码(可带图片)
- Zxing生成二维码(可带图标)
- 带图片二维码生成
- Android----------生成二维码(可加图片)
- android 生成二维码(带图片&不带图片)
- Swift 3.0 生成二维码图片
- 二维码的生成(Swift)保证生成的图片清晰
- iOS 生成二维码带图片
- 二维码生成中间带 图片
- 普通二维码和带图片二维码生成
- java zxing二维码(可带logo)、条形码生成解析
- swift系统自带二维码的生成
- C# 生成二维码图片(位深度可设) QRCode
- (转载)java zxing 生成带图片的二维码
- JAVA 生成二维码图片 可加Logo
- java zxing 生成带图片的二维码
- java代码生成带图片的二维码
- java zxing 生成带图片的二维码
- code01:JS实现回车登录
- 第13周项目3-Dijkstra算法的验证
- Mac下抓包工具—Charles
- C语言存储类型理解
- 《微服务》九大特性重读笔记
- swift-生成二维码(可带图片)
- 自己刚学html的时候记得笔记,别嫌丑,我就是这么学过来的
- 单例模式
- 使用toobar实现知乎首页样式(新特性
- 阿里云ubuntu16.04上搭建gunicorn+supervisor+nginx详解
- 公司-->保存时验证数据是否保存重复
- Win8下IIS8配置PHP运行环境
- oracle运用(五) oracle数据库常用的99条查询语句
- js算法2