【问题标题】:PHAsset sharing the image(UIImage) with UIActivitiViewController lose metadata (Exif and etc)与 UIActivitiViewController 共享图像(UIImage)的 PHAsset 丢失元数据(Exif 等)
【发布时间】:2016-06-27 10:00:53
【问题描述】:

在我的项目中,我与 UIActivityViewController 共享图像和视频阶段

但是对于图像,当我与 UIActivityViewController 共享 3.0MB 图像时,它会增长超过 6.0MB 并丢失元数据。

在我的来源

[[PHImageManager defaultManager] requestImageDataForAsset:asset
                                                  options:options
                                            resultHandler:^(NSData * _Nullable imageData, NSString * _Nullable dataUTI, UIImageOrientation orientation, NSDictionary * _Nullable info) {
                                                if (completion)
                                                    completion(imageData);
                                            }];

当我检查 imageData 时,它仍然有元数据,但如果我将其转换为 UIImage 并尝试共享它,它就会丢失其元数据(Exif 等...)并调整大小。

有没有办法与元数据共享原始文件(= 没有数据丢失)?

谢谢。

【问题讨论】:

    标签: uiimage metadata uiactivityviewcontroller phasset


    【解决方案1】:

    我是这样解决的。

    1. 使用 writeToFile

    2. 将 NSData 图像保存到文件
    3. 将图像共享为 NSUrl

    那么元数据不会丢失。

    【讨论】:

    • 嗨,Kim,分享视频也有丢失元数据的问题。您是否知道不丢失视频文件共享的元数据?
    • @srjohnhuang 也许这个答案对你有帮助stackoverflow.com/questions/38196661/…
    • 嗨,Kim,感谢您的提示。似乎苹果会破坏相机胶卷的元数据,同时直接从相机胶卷共享它。当前的解决方案就像您在链接中提到的那样,将视频复制到应用程序的文件夹中。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-07-11
    • 1970-01-01
    • 2017-06-27
    • 1970-01-01
    • 2012-06-27
    • 2014-06-20
    • 2017-09-11
    相关资源
    最近更新 更多