Iphone 图像元数据丢失

Iphone 图像元数据丢失,iphone,macos,ios,core-graphics,Iphone,Macos,Ios,Core Graphics,我正在将图像从Mac桌面应用程序传输到iPad应用程序,但在传输过程中,我丢失了所有图像的EXIF数据 设置如下所示: 在Mac上: 1-从图像中获取数据 2-调整图像大小 3-通过无线网络向iPad应用程序发送图像 在iPad上: 4-将NSData写入文件 5-从文件中读取图像 一旦NSF数据出现在iPad上,EXIF数据似乎就丢失了。如果手动打开图像,则找不到EXIF数据 你知道EXIF数据丢失的原因吗?调整大小操作不会影响EXIF数据(我已经检查过了),但一旦NSData到达iPad,我

我正在将图像从Mac桌面应用程序传输到iPad应用程序,但在传输过程中,我丢失了所有图像的EXIF数据

设置如下所示:

在Mac上: 1-从图像中获取数据 2-调整图像大小 3-通过无线网络向iPad应用程序发送图像

在iPad上: 4-将NSData写入文件 5-从文件中读取图像

一旦NSF数据出现在iPad上,EXIF数据似乎就丢失了。如果手动打开图像,则找不到EXIF数据

你知道EXIF数据丢失的原因吗?调整大小操作不会影响EXIF数据(我已经检查过了),但一旦NSData到达iPad,我就没有任何EXIF数据了(甚至在我将数据写入磁盘之前)。我认为我从Mac电脑发送到iPad的数据是相同的

我使用ImageIO框架访问两个平台上的数据。iPad/iPhone上的ImageIO是否有可能做不同的事情,剥离或不支持EXIF数据

欢迎任何指点

我使用ImageIO框架访问两个平台上的数据。iPad/iPhone上的ImageIO是否有可能做不同的事情,剥离或不支持EXIF数据

是的,这是可能的,但不太可能

更有可能的是,您不支持EXIF数据

CGImage对象只是一个图像;如果仅从文件中提取CGImage,则仅获取图像,而不是EXIF或其他属性(例如,分辨率、颜色空间)数据。您需要创建、传输和属性字典以及图像

在我看来,在Mac上完成这一切并将最终图像发送到iPad会更容易。在向下调整大小的情况下,这甚至会使其更快,因为您将传输更少的数据(更小的图像)

我使用ImageIO框架访问两个平台上的数据。iPad/iPhone上的ImageIO是否有可能做不同的事情,剥离或不支持EXIF数据

是的,这是可能的,但不太可能

更有可能的是,您不支持EXIF数据

CGImage对象只是一个图像;如果仅从文件中提取CGImage,则仅获取图像,而不是EXIF或其他属性(例如,分辨率、颜色空间)数据。您需要创建、传输和属性字典以及图像


在我看来,在Mac上完成这一切并将最终图像发送到iPad会更容易。在向下调整大小的情况下,这甚至会加快速度,因为您将传输更少的数据(更小的图像)。

谢谢您的回复,Peter。正如我在开篇文章中所写的那样,大小调整是在Mac上完成的,并且大小调整后的图像(包括元数据)被发送到iPad(作为NSData实例),但元数据在旅途中被丢弃在某个地方,这让我感到惊讶(因此我在这里提出问题)。我将进一步挖掘,试图找到原因和解决方案。@bare_nature:你的问题并不是说你在传输图像的同时传输属性;如果你是,你应该编辑你的问题,包括该代码和iPad端的代码,以接收它们,并将它们放回一起。谢谢你的回答,Peter。正如我在开篇文章中所写的那样,大小调整是在Mac上完成的,并且大小调整后的图像(包括元数据)被发送到iPad(作为NSData实例),但元数据在旅途中被丢弃在某个地方,这让我感到惊讶(因此我在这里提出问题)。我将进一步挖掘,试图找到原因和解决方案。@bare_nature:你的问题并不是说你在传输图像的同时传输属性;如果你是,你应该编辑你的问题,包括该代码和iPad端的代码,以接收它们,并将两者重新组合在一起。