Android 使用智能手机时,检测加载的图像是否直接从相机拍摄
我正在使用html,标记:Android 使用智能手机时,检测加载的图像是否直接从相机拍摄,android,file,input,camera,smartphone,Android,File,Input,Camera,Smartphone,我正在使用html,标记: <input type = "file" /> 在android和许多Cellular上,我可以通过拍照和保存直接获取文件 我怎么知道(通过javascript代码)我是如何得到照片的(直接通过相机,或者通过手机上的一些文件) 我在Arround做了一些工作,找到了exif(),但我没有成功地将其用于动态加载图像,因为站点: 需要一些源代码示例,以了解exif如何处理动态加载的图像 谢谢:)我自己找到了解决方案,所以我想参与其中: 我需要的是将二进制
<input type = "file" />
在android和许多Cellular上,我可以通过拍照和保存直接获取文件
我怎么知道(通过javascript代码)我是如何得到照片的(直接通过相机,或者通过手机上的一些文件)
我在Arround做了一些工作,找到了exif(),但我没有成功地将其用于动态加载图像,因为站点:
需要一些源代码示例,以了解exif如何处理动态加载的图像
谢谢:)我自己找到了解决方案,所以我想参与其中: 我需要的是将二进制数据转换为exif数据, 因此,在exif.js上,我添加了以下内容
jQuery.fn.getExif = function() {
var exif;
var bin;
var bf;
bin = atob(this.attr("src").split(',')[1]);
if (bin) {
bf = new BinaryFile(bin);
}
if (bf) {
exif = EXIF.readFromBinaryFile(bf);
}
if (exif) {
this.attr("exifdata", exif);
}
return exif;
}
并使用上面的代码-只要得到我想要的任何exif值
主要问题是图像应该根据exif进行旋转
(如果方向是顺时针90度,那么我应该逆时针旋转90度,以固定方向)-大多数设备都没有问题,
但有一个问题在一些设备上依然存在,比如IPAD
IPAD(或者Safari,我不知道问题到底出在哪里)帮了我一个忙,当我从文件中加载图像时,它会自动旋转图像,所以总是正确显示
现在,我如何知道何时旋转图像以及何时不旋转图像
谢谢:)