繁体   English   中英

从文件创建CIImage时出现问题

[英]Issue when creating CIImage from file

无论我尝试直接从文件中加载CIImage什么,我都没有。 但是我可以将文件加载到UIImage并将其转换为CIImage

因此,这有效:

        let testUIImage = UIImage(named: "image_0001.jpg")!
        let testCIImage = CIImage(image: testUIImage)  // OK

但这不是:

        let testCIImage = CIImage(contentsOf: URL(string: "image_0001.jpg")!)  // returns nil

我究竟做错了什么? 是URL吗?

如果您的图片位于主捆绑包中,则需要提供文件网址,那么您可以像以下代码一样获取网址

guard let url = Bundle.main.url(forResource:"image_0001", withExtension:"jpg") else {
  return 
}
let testCIImage = CIImage(contentsOf: url)
  1. UIImage(named: "name.ext")是一个便利的初始化程序。 这是

     guard let url = Bundle.main.url(forResource:"name", withExtension:"ext"), let data = try? Data(contentsOf: url), let image = UIImage(data: data) else { return nil } return image 
  2. URL(string:期望一个字符串,该字符串代表以方案开头的完整 URL,例如

     URL(string: "https://example.com/path/to/image_0001.jpg") 

    要么

     URL(string: "file:///Users/myuser/path/to/image_0001.jpg") 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM