ios - 如何在 iOS 的 swift 中上传 gif 图片

标签 ios swift uiimage gif

我正在实现一个将图像上传到网络服务器的 iOS 应用程序。该应用程序提供了一个扩展,允许从 Twitter、消息等应用程序上传。

当用户选择图像时,itemProvider 可以将其呈现为 UIImageData网址。为了解决这个问题,我根据 itemProvider 提供的内容创建了一个 UIImage 对象,并将这个新的 UIImage 对象发送到上传函数。

后者(上传功能)使用 Alamofire 上传图像,因此需要有一个 Data 对象,我通过使用 UIImageJPEGRepresentation 获得该对象UIImage 对象的 UIImagePNGRepresentation。这适用于大多数图像,但对于 gif,则不然。 .gif 失去了它的动画属性,只上传了一张静态图片。

所以我的问题是如何从 UIImage 对象中获得一个 Data 对象,它保留了原始文件的 .gif 属性(动画)?

非常感谢您提供的帮助。

最佳答案

这是如何做到的,非常简单。

myData = Data(contentsOf: url)

但是 XCode 需要捕获错误,它会给出:

do{
   try myData = Data(contentsOf: url)
}catch let error{
   print ("Error \(error)")
}

关于ios - 如何在 iOS 的 swift 中上传 gif 图片,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45723233/

相关文章:

ios - 访问 ALAssetsLibrary 时出现内存错误

objective-c - 为什么这个 UIView 在某些情况下没有被添加为 subview ,但在其他情况下却可以?

ios - Swift 获取总行驶距离 ios 9

c++ - 作为可选函数指针的类参数不被识别为函数

ios - 与 "required"相反的 Swift,或在父类(super class)中具有所需 init 方法的工厂设计模式

objective-c - 动画 UIImageView 色调颜色不起作用

iOS:从后台线程创建 UIImage?

ios - UITableView 中的圆形 UIImages 导致速度变慢

ios - 使用可失败的初始化程序崩溃

swift - 如何将我的分数变量发送到另一个 View Controller ?