Swift CIFilter.outputImage是否为零?

Swift CIFilter.outputImage是否为零?,swift,null,cifilter,ciimage,Swift,Null,Cifilter,Ciimage,当我在两台MAC PC上运行以下程序时,一台正常,另一台为NG,因此我不知道如何解决问题,如果您知道原因,请给我一些想法 注意:我发现了一些类似的问题,但它们几乎与从CIImage转换为UIImage时的进程时间有关。所以我认为这个问题可能与他们不同 IOS版本:11 let barCode : String = "BPWE-12-WBTDJ-23WES-9F7D9" let data = barCode.data(using: .utf8) guar

当我在两台MAC PC上运行以下程序时,一台正常,另一台为NG,因此我不知道如何解决问题,如果您知道原因,请给我一些想法

注意:我发现了一些类似的问题,但它们几乎与从CIImage转换为UIImage时的进程时间有关。所以我认为这个问题可能与他们不同

IOS版本:11

    let barCode : String = "BPWE-12-WBTDJ-23WES-9F7D9"
    let data = barCode.data(using: .utf8)
    guard let filter = CIFilter(name: "CICode128BarcodeGenerator") else {
        return
    }
    filter.setValue(data, forKey: "inputMessage")
    guard let ciImage = filter.outputImage else {   //here is nil
        return
    }
我已经得到了答案。 首先,我要对大家说声抱歉,因为我犯了一个错误,我的两台MAC电脑之间的可变条形码有一点不同,一台是使用UIDevice.current.identifierForVendor!分配的!。uuidString。 正如你们所知,当它在模拟器上运行时,它可能不会很好地工作,当然,它可以在真正的iPad或iPhone上很好地工作

所以当我改变可变条形码的值而不是使用UUID时,我解决了这个问题


谢谢大家。

您确定有时候数据不是零吗?可能字符串无效utf8?无法复制您的问题。您的
ciImage
不是
nil
。我想您的问题是,当您试图从中获取PNG或JPEG数据表示时,它返回的是
nil