PUROGU LADESU

ポエムがメインのブログです。

【Swift】QRコードを作成する

QRコード

CIFilterを使います。
画像を加工したり生成するライブラリのようです。

private func generateQrCode(text: String) -> UIImage? {
    guard let data = text.data(using: .utf8) else { return nil }
    // 文字列データと誤り訂正レベル(LMQH)を指定します
    let qrData = CIFilter(name: "CIQRCodeGenerator", parameters: ["inputMessage": data, "inputCorrectionLevel": "M"])
    let sizeTransform = CGAffineTransform(scaleX: 10, y: 10)
    guard let qrImage = qrData?.outputImage?.transformed(by: sizeTransform) else { return nil }
    let image = UIImage(ciImage: qrImage)

    return image
}