QRCoder
自OSX 10.9/iOS 7起,苹果提供了一种CI过滤功能来生成QR码。但是,如果不模糊图像,要按所需大小缩放QR码没有直接的方法。QRCoder库可以帮助您完成这项工作。它还包含了一个方便的视图控制器来扫描QR码(仅限iOS)。
使用方法:生成器
简单使用QRCodeGenerator的实例来创建一个扩展为QRImage的图像。这是iOS下的UIImage和OS X下的NSImage的类型别名。
let generator = QRCodeGenerator()
//Default correction level is M
generator.correctionLevel = .H
let image:QRImage = generator.createImage("Hello world!",size: CGSizeMake(200,200))
let generator = QRCodeGenerator()
let image:QRImage = generator.createImage("Hello world!",size: CGSizeMake(200,200))
您可以设置纠错级别为以下值之一[L,M,Q,H]。其含义如下:
- 级别 L – 最多 7% 的损坏
- 级别 M – 最多 15% 的损坏
- 级别 Q – 最多 25% 的损坏
- 级别 H – 最多 30% 的损坏
示例用法
let generator = QRCodeGenerator(correctionLevel: .H)
使用方法:扫描器(iOS)
class ScannerViewController : QRCodeScannerViewController {
override func processQRCodeContent(qrCodeContent: String) -> Bool {
println(qrCodeContent)
dismissViewControllerAnimated(true, completion: nil)
return true
}
override func didFailWithError(error: NSError) {
let alert = UIAlertController(title: error.localizedDescription,
message: error.localizedFailureReason, preferredStyle: .Alert)
let okAction = UIAlertAction(title: "OK", style: .Default, handler: {
_ in
self.dismissViewControllerAnimated(true, completion: nil)
})
alert.addAction(okAction)
presentViewController(alert, animated: true, completion: nil)
}
}
要运行示例项目,请克隆仓库,然后首先在示例目录中运行 pod install
需求
需要操作系统 OS X 10.9 / iOS 8。
安装
QRCoder 通过 CocoaPods 提供。要安装它,只需将以下行添加到您的 Podfile 中
pod "QRCoder"
版本兼容性
当前 Swift 兼容性分解
Swift 版本 | 框架版本 |
---|---|
4.1 | 1.x |
2.3 | 0.x |
待办
- 为 OS X 添加二维码扫描器
贡献
- 克隆仓库
- 创建新的分支以进行更改
- 将所有更改提交到您的分支
- 提交 pull request
作者
Sebastian Hunkeler, @sbhklr
许可协议
QRCoder遵从MIT许可协议。更多信息请参阅LICENSE文件。