如何在目标c中将heic转换为jpg

Nul*_*ion 4 file-format objective-c ios11 xcode9

iOS 11引入了称为HEIC的新图像格式。因此,当我将图像上传到服务器时,它将失败。所以我需要将HEIC文件格式转换为JPEG。

我尝试仅更改文件格式,但无法正常工作。因此,如果有人找到了将HEIC文件转换为JPEG的解决方案,请提供解决方案。

mar*_*o16 5

有一种解决方法,可以在将HEIC照片上传到服务器之前将其转换为JPEG:

NSData *jpgImageData = UIImageJPEGRepresentation(image, 0.7);
Run Code Online (Sandbox Code Playgroud)

如果使用PHAsset,则为了具有图像对象,需要从PHImageManager调用此方法:

- (PHImageRequestID)requestImageForAsset:(PHAsset *)asset targetSize:(CGSize)targetSize contentMode:(PHImageContentMode)contentMode options:(nullable PHImageRequestOptions *)options resultHandler:(void (^)(UIImage *__nullable result, NSDictionary *__nullable info))resultHandler;
Run Code Online (Sandbox Code Playgroud)

在服务器端,您还可以使用此API, 我创建了一个简约的网站来使用tifig lib处理转换。