如何在Objective-C中将heic转换为jpg

问题描述 投票:4回答:1

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

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

objective-c ios11 xcode9 file-format
1个回答
5
投票

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

NSData *jpgImageData = UIImageJPEGRepresentation(image, 0.7);

如果使用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;

在服务器端,您也可以使用this API我创建了一个minimalist website以使用tifig lib处理转换。

© www.soinside.com 2019 - 2024. All rights reserved.