SwiftでQRコードを簡単に作成するExtension

はじめに

こんにちは🍃
iOSアプリ内でQRコードを生成する等の機能の利用部分は限られていますが、
文字列から簡単に作成したくなりましたので、書いてみたいと思います。
参考になれば幸いです。
今回は上のスクリーンショットのように文字列からQRコードの画像を作成します。

ソースコード

変数名などはご自由に変更してください🌾

使い方

上記のExtensionをプロジェクトのどこかに配置し、サンプルとしてUIViewControllerで呼び出してみます。 (今回はMainViewControrllerという名前で作成してみました)

QRコードをかざした時に読み込みたい文字列データを引数に渡します。
今回の例では、適当なUIImageViewを用意し、作成されたQRコードの画像をセットしています。

参考にさせていただいた記事

見て頂いてありがとうございます。

1 COMMENT

通りすがり

参考になる記事ありがとうございます。

extension UIImage {
convenience init?(qrCode: String) {
guard let data = qrCode.data(using: .utf8) else { return nil }
guard let qr = CIFilter(name: “CIQRCodeGenerator”, parameters: [“inputMessage”: data]) else { return nil }
let transform = CGAffineTransform(scaleX: 10, y: 10)
guard let ciImage = qr.outputImage?.transformed(by: transform) else { return nil }
guard let cgImage = CIContext().createCGImage(ciImage, from: ciImage.extent) else { return nil }
self.init(cgImage: cgImage)
}
}

こうすることでUIImage(qrCode: urlText)で初期化できるようになりました。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です