import SwiftUIstruct QRGenerator: View { @State private var text = "" var body: some View { NavigationStack { VStack { TextField("Enter code", text: $text) .textFieldStyle(.roundedBorder) .padding() Image("") .resizable() .frame(width: 200, height: 200) } .navigationTitle("DevTechie.com") } } }
import CoreImage
import CoreImage.CIFilterBuiltins
func generateQR(text: String) -> Data?
let filter = CIFilter.qrCodeGenerator()
guard let data = text.data(using: .ascii, allowLossyConversion: false) else { return nil }
filter.message = data
guard let ciimage = filter.outputImage else { return nil }
let transform = CGAffineTransform(scaleX: 10, y: 10) let scaledCIImage = ciimage.transformed(by: transform)
let uiimage = UIImage(ciImage: scaledCIImage) return uiimage.pngData()!
func generateQR(text: String) -> Data? { let filter = CIFilter.qrCodeGenerator() guard let data = text.data(using: .ascii, allowLossyConversion: false) else { return nil } filter.message = data guard let ciimage = filter.outputImage else { return nil } let transform = CGAffineTransform(scaleX: 10, y: 10) let scaledCIImage = ciimage.transformed(by: transform) let uiimage = UIImage(ciImage: scaledCIImage) return uiimage.pngData()! }
import CoreImage import CoreImage.CIFilterBuiltins import SwiftUIstruct QRGenerator: View { @State private var text = "" var body: some View { NavigationStack { VStack { TextField("Enter code", text: $text) .textFieldStyle(.roundedBorder) .padding() Image(uiImage: UIImage(data: generateQR(text: text)!)!) .resizable() .frame(width: 200, height: 200) } .navigationTitle("DevTechie.com") } } func generateQR(text: String) -> Data? { let filter = CIFilter.qrCodeGenerator() guard let data = text.data(using: .ascii, allowLossyConversion: false) else { return nil } filter.message = data guard let ciimage = filter.outputImage else { return nil } let transform = CGAffineTransform(scaleX: 10, y: 10) let scaledCIImage = ciimage.transformed(by: transform) let uiimage = UIImage(ciImage: scaledCIImage) return uiimage.pngData()! } }
With that we have reached the end of this article. Thank you once again for reading. Don’t forget to subscribe our newsletter at https://www.devtechie.com