【发布时间】:2017-04-13 11:14:16
【问题描述】:
由于存储图片将成为 Firebase 中更昂贵的功能之一,我的应用将使用我的应用程序,因此我想确保我能够高效地执行此操作。
我正在采取的步骤如下:
将用户要上传的图片大小调整为 500 点的宽度(一个点表示非视网膜屏幕上的一个像素,视网膜屏幕上的两个像素)
将指定图片的数据以 PNG 格式上传到 Firebase 存储
这是我的实际代码:
let storageRef = FIRStorage.storage().reference().child("\(name).png")
if let uploadData = UIImagePNGRepresentation(profImage.resizeImage(targetSize: CGSize(width: 500, height: Int(500*(profImage.size.height/profImage.size.width))))) {
storageRef.put(uploadData, metadata: nil, completion: nil)
}
当向用户显示时,这些照片将比 iPhone 屏幕的宽度小一点。我存储它们的方式是有效的还是有更好的格式化方式?
**编辑:经过更多研究,我发现 JPG 比 PNG 更有效,所以我将切换到它,因为透明度对我来说并不重要。例如,请参阅我的答案。
【问题讨论】:
-
嗨 MarksCode。请编辑您的帖子以删除解决方案并将其发布为答案(请参阅Self Answer)以及您关于为什么最终得出该结论的研究细节。干杯! :)
-
会做!感谢您一直在帮助人们。作为一名 CS 学生,您、firebase 员工和其他有经验的人对我来说意义重大。
-
不客气。也感谢您对社区的帮助。干杯! :)
标签: ios swift firebase firebase-storage