从图像中提取exif方向数据

19

可能重复:
在客户端使用JavaScript访问JPEG EXIF旋转数据

我需要用Javascript从HTML JPEG图像中提取方向EXIF数据。

根据exiftool的文档,方向标志位于EXIF标记内的偏移量0x112处,占用2个字节。

我想我们只需要在正确的偏移量处提取数据并“转换”值,但我不知道如何在浏览器中实现这一点。结果值应该是一个介于1和8之间的数字,描述方向。

如何从简单的IMG标签中读取该数据? 我需要一个仅支持Webkit的解决方案,但仅限于浏览器。

谢谢!

1个回答

18

这可能是与此问题的重复。

谢谢。以下是获取方向的最终代码示例:

var b64 = "data:image/jpeg;base64,/9j/4AAQSkZJRgABA......";
var bin = atob(b64.split(',')[1]);
var exif = EXIF.readFromBinaryFile(new BinaryFile(bin));
alert(exif.Orientation);

1
当我尝试这个时,它会弹出“未定义”的警告,请帮忙。 - Prakash Chennupati
4
这是一个测试页面:http://metapicz.com/ - jujule
27
我不确定这个回答是如何获得如此高的正分数的,因为它没有提到这段代码依赖于exif.js,而且我也不确定这个 BinaryFile 应该是什么。 - Alex
4
"BinaryFile" 返回未定义。 - user1709076
2
有什么方法可以“短路”这个过程吗?也就是说,获取exif而无需读取整个文件? - Hassan Baig
显示剩余3条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接