почему UIImagePNGRepresentation() возвращает ноль? когда я пытаюсь сохранить новое изображение

Я создаю UIImage QR-кода и хочу его сохранить. Но когда UIImagePNGRepresentation преобразует UIImage в данные, он всегда возвращает ноль. пожалуйста, помогите мне!

public func generaImagenQR(texto:String)->UIImage?{
    let data = texto.data(using: String.Encoding.ascii)
    //Generate a QR code
    if let filter = CIFilter(name: "CIQRCodeGenerator") {
        filter.setValue(data, forKey: "inputMessage")
        let transform = CGAffineTransform(scaleX: 3, y: 3)
        if let output = filter.outputImage?.applying(transform) {
            return UIImage(ciImage: output)
        }
    }
   return nil
}


let imagenDeQR  = generaImagenQR(texto: "hola")

let data = UIImagePNGRepresentation(imagenDeQR!)
// data == nil !!!

person miguel    schedule 17.03.2017    source источник
comment
документ для UIImagePNGRepresentation является возвращаемым изображением в формате PNG. Может возвращать nil, если изображение не имеет CGImageRef или недопустимый формат растрового изображения.   -  person duan    schedule 17.03.2017
comment
Я знаю, но у UIImage есть действительное изображение (я видел изображение в представлении), но оно все еще не работает.   -  person miguel    schedule 17.03.2017