正如这些问题中所指出的,在iOS上上传的照片有时会删除其地理位置和其他EXIF元数据(在Safari中):
https://apple.stackexchange.com/questions/326789/gps-exif-from-iphone-photo-upload-in-safari
Image upload from iphone strips exif data
到目前为止,我还没有找到适当的描述这种情况发生时的情况。我有2个设备用于测试,安装了最新的iOS,其中EXIF元数据没有被剥离。
有没有一种方法可以确定,最有希望的是在浏览器中或从上传中,如果元数据已经被剥离,以便向用户显示某种信息?
4条答案
按热度按时间8dtrkrch1#
我现在可以告诉你,对于我的iPhone X和iOS 13.3(当前),如果我使用默认的设置->相机->相机设置,即“高效”,exif数据将被剥离。但是如果我将其更改为“Most problem”,EXIF数据不会被剥离。这些结果是一致的,如果我不操纵照片在我的手机上上传之前。
它看起来像是在“高效率”模式下拍摄的照片,如果他们已经在手机上编辑第一次上传EXIF数据-但我还没有做广泛的测试,以验证是否总是这种情况下,或在什么条件下,这总是工作。
eyh26e7m2#
这里很难理解你的用例,但是如果你的想法是在用户从你的应用程序内部上传文件时显示EXIF已经被删除(或没有被删除),你可以注入一个脚本来包含这个库https://github.com/exif-js/exif-js,然后在UIAlertView中显示EXIF数据的结果?
xfb7svmp3#
从iOS 17开始,用户可以选择不剥离exif数据。
资料来源:
kyks70gy4#
现在有了访问原始
<input type="file">
标记信息的方法。这使您能够获取所需的EXIF
数据,将其放入隐藏的表单字段中,并将其与真实的文件上传一起发送。获取EXIF:
1.创建一个按钮来调用函数以生成文件输入并添加更改处理程序。
1.然后,在文件更改处理程序中使用
$(this).get(0).files
来获取所选文件的列表。1.解析exif数据并将浏览结果发送到
jsjpegmeta
。这样你就可以在删除之前获取所有的exif信息。