Commit 7d4b7d06 authored by David黄金龙's avatar David黄金龙

修改 生成二维码图片的方法

parent 7350296a
......@@ -260,22 +260,39 @@ extension String {
///字符串 生成二维码
func generateQRCode() -> UIImage? {
guard let data = self.data(using: .ascii, allowLossyConversion: false) else {
return nil
}
// guard let data = self.data(using: .ascii, allowLossyConversion: false) else {
// return nil
// }
//
// let filter = CIFilter(name: "CIQRCodeGenerator")
// filter?.setValue(data, forKey: "inputMessage")
//
// guard let outputImage = filter?.outputImage else {
// return nil
// }
//
// let context = CIContext()
// if let cgImage = context.createCGImage(outputImage, from: outputImage.extent) {
// return UIImage(cgImage: cgImage)
// }
//
// return nil
let data = self.data(using: String.Encoding.ascii)
let filter = CIFilter(name: "CIQRCodeGenerator")
filter?.setValue(data, forKey: "inputMessage")
filter?.setValue("H", forKey: "inputCorrectionLevel") // 设置二维码的容错率
guard let outputImage = filter?.outputImage else {
return nil
}
// 获取生成的二维码CIImage
guard let outputImage = filter?.outputImage else { return nil }
let context = CIContext()
if let cgImage = context.createCGImage(outputImage, from: outputImage.extent) {
return UIImage(cgImage: cgImage)
}
// 将CIImage转换为UIImage
let scaleX = 5.0
let scaleY = 5.0
let transformedImage = outputImage.transformed(by: CGAffineTransform(scaleX: scaleX, y: scaleY))
let qrCodeImage = UIImage(ciImage: transformedImage)
return nil
return qrCodeImage
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment