ios - 透明背景变白

标签 ios swift firebase uiimageview

我正在将具有透明背景的图像上传到 Firebase。当我以某种方式下载它时,背景变白了。知道如何解决这个问题吗?

这是我的 putData 函数。

let uploadData = imageview.image!.jpegData(compressionQuality: 0.75)
let uploadTask = imagesRef.putData(uploadData!, metadata: nil, completion: { (metadata, error) in
    guard let metadata = metadata else {
        return
    } 

这里是下载函数。

URLSession.shared.dataTask(with: NSURL(string: imageURL as! String)! as URL, completionHandler: { (data, response, error) -> Void in
    if error != nil {
        print("ERROR LOADING IMAGES FROM URL: \(String(describing: error))")
        DispatchQueue.main.async {
            imageView.image = UIImage()
        }
        return
    }

    DispatchQueue.main.async {
        if let downloadedImage = UIImage(data: data!) {
            imageCache.setObject(downloadedImage, forKey: NSString(string: imageURL!))
            imageView.image = downloadedImage
        }
    }
}).resume()

最佳答案

I'm uploading an image with a transparent background to firebase. The background becomes white when I downloaded it somehow. Any idea how to fix this?

您做对了,除了您得到的是 JPEG 而不是 PNG 数据;)请记住 JPEG 不支持透明 BG。

希望对您有所帮助!

关于ios - 透明背景变白,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53862030/

相关文章:

android - FireStore 批量写入不同的集合

ios - 没有 UITabBarController 的 UITabBarItem

ios - 有没有办法在 UITest 中将 valueForKey 与 NSPredicate 一起使用?

ios - 如何使用 Xcode 7 为 iPhone 5 添加启动屏幕

swift - Childadded 检索一个 key

javascript - 我想使用子值检索 firebase 数据库数据

iphone - CAKeyframeanimation 沿路径移动 UIView

swift - 在嵌套函数中 self 捕获

ios - 将服务器数据保存到核心数据,在后台线程问题

java - Spinner 值自动更新到位置 0,该位置从 firebase 获取数据