Swift-生成二维码

2018-03-27  本文已影响26人  岁变

  项目做的差不多了,也有时间可以做一下项目整理了,今天就记录一下项目中的小功能,点击分享生成链接二维码。这是一个很常用,也很简单的小功能,但是,我敢说大家要做的话也肯定要到网上搜例子参考来做。所以我就在这里记录下来,等下次再做的话,就可以不用看别人的东西了。

小功能也不需要过多的解释和说明,直接上代码:

    ///下载网址生成二维码
    func createQRcode(downloadUrl: String) -> UIImage {
        
        let stringData = downloadUrl.data(using: .utf8, allowLossyConversion: false)
        //创建一个二维码的滤镜
        let qrFilter = CIFilter(name: "CIQRCodeGenerator")
        qrFilter?.setValue(stringData, forKey: "inputMessage")
        qrFilter?.setValue("H", forKey: "inputCorrectionLevel")
        let qrCIImage = qrFilter?.outputImage
        
        //创建一个颜色的滤镜,黑白色
        let colorFilter = CIFilter(name: "CIFalseColor")!
        colorFilter.setDefaults()
        colorFilter.setValue(qrCIImage, forKey: "inputImage")
        colorFilter.setValue(CIColor.init(red: 0, green: 0, blue: 0), forKey: "inputColor0")
        colorFilter.setValue(CIColor.init(red: 1, green: 1, blue: 1), forKey: "inputColor1")
        
        //返回二维码image
        let codeImage = UIImage(ciImage: (colorFilter.outputImage!.transformed(by: CGAffineTransform(scaleX: 5, y: 5))))

        return codeImage
    }

OK,完事。

上一篇 下一篇

猜你喜欢

热点阅读