加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

iPhone,如何从照片库中读取图像作为NSData?

发布时间:2020-12-14 19:58:38 所属栏目:百科 来源:网络整理
导读:在iPhone上,我使用assest库将图像保存(即在图像代码后附加数据),将图像保存到照片库,将NSData直接保存到照片库中.现在我想从照片库中读回图像作为NSData来读取它.如果我将其作为UI Image读取,它会更改图像内的数据. 如何将照片库中的照片作为NSData读取?我
在iPhone上,我使用assest库将图像保存(即在图像代码后附加数据),将图像保存到照片库,将NSData直接保存到照片库中.现在我想从照片库中读回图像作为NSData来读取它.如果我将其作为UI Image读取,它会更改图像内的数据.

如何将照片库中的照片作为NSData读取?我尝试在4.1中查看参考URL,但没有运气.

编辑:我编辑解释为什么我将其保存为NSData.如果您只想要纯NSData,则答案中的URL方法有效,但在我要求的上下文中没有帮助.

编辑2:getBytes的答案是为我做的答案.我使用的代码是:

int8_t *bytes = malloc([representation size]);
NSUInteger length = [representation getBytes:bytes fromOffset:0 length:[representation size] error:&error];

这能够让我得到文件里面的所有内容,它给了我在NSData表单中添加的图像代码PLUS.

编辑3:

现在有没有办法在iOS 10中使用PHPhotoLibrary替换AssetLibrary?我需要NSData中的图像是原始的RAW图像,没有任何修改.

解决方法

您应该查看ALAssetRepresentation的getBytes方法.
这样可以为您提供图像的原始RAW图像数据,还可以使用缓冲区处理图像,而不是一次性将图像读入内存.
当然,您始终可以从getBytes方法生成NSData.

干杯,

亨德里克

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读