Swift 生成高清二维码 这个没有前景图片只是简单的生成普通的高清二维码
2016-12-08 10:56
429 查看
Swift 生成高清二维码 这个没有前景图片只是简单的生成普通的高清二维码
/// 二维码容器 @IBOutlet weak var customImageVivew: UIImageView! override func viewDidLoad() { super.viewDidLoad() // 1.创建滤镜 let filter = CIFilter(name: "CIQRCodeGenerator") // 2.还原滤镜默认属性 filter?.setDefaults() // 3.设置需要生成二维码的数据到滤镜中 // OC中要求设置的是一个二进制数据 filter?.setValue("WD".dataUsingEncoding(NSUTF8StringEncoding), forKeyPath: "InputMessage") // 4.从滤镜从取出生成好的二维码图片 guard let ciImage = filter?.outputImage else { return } // customImageVivew.image = UIImage(CIImage: ciImage) customImageVivew.image = createNonInterpolatedUIImageFormCIImage(ciImage, size: 500) } /** 生成高清二维码 - parameter image: 需要生成原始图片 - parameter size: 生成的二维码的宽高 */ private func createNonInterpolatedUIImageFormCIImage(image: CIImage, size: CGFloat) -> UIImage { let extent: CGRect = CGRectIntegral(image.extent) let scale: CGFloat = min(size/CGRectGetWidth(extent), size/CGRectGetHeight(extent)) // 1.创建bitmap; let width = CGRectGetWidth(extent) * scale let height = CGRectGetHeight(extent) * scale let cs: CGColorSpaceRef = CGColorSpaceCreateDeviceGray()! let bitmapRef = CGBitmapContextCreate(nil, Int(width), Int(height), 8, 0, cs, 0)! let context = CIContext(options: nil) let bitmapImage: CGImageRef = context.createCGImage(image, fromRect: extent) CGContextSetInterpolationQuality(bitmapRef, CGInterpolationQuality.None) CGContextScaleCTM(bitmapRef, scale, scale); CGContextDrawImage(bitmapRef, extent, bitmapImage); // 2.保存bitmap到图片 let scaledImage: CGImageRef = CGBitmapContextCreateImage(bitmapRef)! return UIImage(CGImage: scaledImage) }
}
相关文章推荐
- 超简单的python生成二维码图片
- iOS几个功能:1.摇一摇;2.震动;3.简单的摇动动画;4.生成二维码图片;5.发送短信;6.播放网络音频等
- Swift开发小技巧--扫描二维码,二维码的描边与锁定,设置扫描范围,二维码的生成(高清,无码,你懂得!)
- Swift简单实现URL生成二维码,并保存到本地相册
- 二维码的生成(Swift)保证生成的图片清晰
- 在线生成简单二维码图片
- Swift 3.0 生成二维码图片
- java 简单快速的生成二维码(带图片)
- iOS生成二维码(中间包含图片),长按识别二维码(Swift)
- 教你三行代码生成高清二维码(Swift1.1)
- 普通二维码和带图片二维码生成
- swift-生成二维码(可带图片)
- 用一张图片作为网页的背景,能让这个图片不管是在普通显示器还是宽屏显示器上都能全屏显示
- Android 游戏引擎libgdx 图片简单加密解密 生成Pixmap
- 解决struts2+jasperReport在生成html形式的报表时的图片问题 没有测试
- java如何生成图片缩略图,缩小图片,高清图片缩小
- 生成高清缩略图; 添加图片、文字水印; 图片、文字水印透明
- ASP.NET MVC 中最简单的上传图片、生成缩略图的小例子
- 简单介绍下生成图片的流程:
- Android平台利用ZXING生成二维码图片