有时候需要对用户上传的图片判断方向是否正确,此时需要知道原图片的拍摄信息,可借助Exif.js实现。

Exif.js 提供了 JavaScript 读取图像的原始数据的功能扩展,例如:拍照方向、相机设备型号、拍摄时间、ISO 感光度、GPS 地理位置等数据。

代码如下:

1
<script src="exif.js"></script>

1
2
3
4
5
6
7
8
9
10
11
12
EXIF.getData(imgElement, function(){
EXIF.getAllTags(this); //获取图像的全部数据,值以对象的方式返回
EXIF.pretty(this); //获取图像的全部数据,值以字符串的方式返回
var orientation = EXIF.getTag(this, 'Orientation'); //获取图像的某个数据
if (orientation == 3) {
//旋转180度
} else if (orientation == 6) {
//旋转90度
} else if (orientation == 8) {
//旋转270度
};
});
Demo

获取用户上传图片方向

官方示例

Exif.js 读取图像的元数据