如何在Swift 4中设置QRCode版本

时间:2018-04-15 23:19:50

标签: ios swift core-graphics swift4 qr-code

使用核心图形库,我能够生成几乎任何类型的。但是,QR码,我无法控制Swift使用的版本。

根据http://www.qrcode.com/en/about/version.html,有几个版本,

当前代码:

let filter = CIFilter(name: "CIQRCodeGenerator")
filter?.setValue(vcard, forKey: "inputMessage")
filter?.setValue("M", forKey: "inputCorrectionLevel")

if let output = filter?.outputImage {
  let scaleX = qrCode.frame.size.width / output.extent.size.width
  let scaleY = qrCode.frame.size.height / output.extent.size.height
  let transform = CGAffineTransform(scaleX: scaleX, y: scaleY)
  let scaledOutput = output.transformed(by: transform)
  self.qrCode.image = UIImage(ciImage: scaledOutput)
}

不允许我控制正在使用的qr代码的版本。它只能确保生成的图像不会模糊,就是这样。

对于更正级别,是否有办法将qr-code版本传递给Core Image lib?

1 个答案:

答案 0 :(得分:0)

根据documentation

  

根据ISO / IEC 18004:2006标准生成表示输入数据的输出图像。

我认为是版本2.版本3是ISO / IEC 18004:2015标准。根据文档无法更改QR版本。