最近一直在做手机端的网站,涉及到上传、压缩图片,我使用的是base64(大神不要嘲笑),在安卓端的时候还没有发现问题,但是一换到IOS端,就出现问题了(再吐槽一下,万恶的IOS),后来查找了一些资料,发现IOS在储存照片的时候会根据拍照的方向来储存,base64压缩的时候要先矫正方向才可以成功的上传和压缩
检测图片的方向要用的到 exif.js ,猛戳这里下载,这个插件可以获取到图片的原信息,同时获取图片的方向,下面开始上代码(不要问我代码是谁( ⊙ o ⊙ )):
主要的代码就是这些,主要是运用exif.js获取图片的真实方向,然后画布来矫正方向,最后显示并压缩在页面中
代码完整实例在这里