我的代码目前正在使用什么:
我从照片库中选择了JPG或PNG(使用标准的ImagePicker方法),并使用以下方法将该图像转换为NSData:
self.myImageData = UIImageJPEGRepresentation(myImage, 0.9);
Run Code Online (Sandbox Code Playgroud)
然后我使用multipart/form-data将其发布到服务器.
我现在想要为GIF做同样的事情,同时保留原始的GIF数据(以便动画GIF进入图书馆,恢复出来仍然是动画).
在didFinishPickingMediaWithInfo中,我可以使用原始GIF的URL
self.myGIFURL = [info objectForKey:UIImagePickerControllerReferenceURL].
Run Code Online (Sandbox Code Playgroud)
这是一个可能让我得到的例子:
资产库://asset/asset.GIF ID = 1000000034&EXT = GIF
以下是我现在尝试将此GIF推送到NSData的两种方法,每次myImageData显示(null).
我试过使用initWithContentsOfURL:
NSData *dataFromGIFURL = [[NSData alloc] initWithContentsOfURL: myGIFURL];
self.myImageData = dataFromGIFURL;
[dataFromGIFURL release];
Run Code Online (Sandbox Code Playgroud)
然后我尝试将NSURL转换为initWithContentsOfFile的字符串:
NSString *stringFromURL = [NSString stringWithFormat:@"%@", myGIFURL];
NSData *dataFromGIFURL = [[NSData alloc] initWithContentsOfFile: stringFromURL];
self.myImageData = dataFromGIFURL;
[dataFromGIFURL release];
Run Code Online (Sandbox Code Playgroud)
有什么建议?谢谢.