使用input,调起ios原生照相机,拍照后获取的图片上传阿里云,从阿里云获取的图片却旋转了90度,这个问题如何解决呢?
这其实是在使用input获取照片的时候,ios对照片进行了二次加工造成的,这种情况可以使用compressorjs库来解决。
首先引入compressorjs。
yarn add compressorjs
然后在代码中使用,将获取的file文件使用库中的方法进行加工,将ios的旋转校正回来,然后再将结果上传就可以了。
import Compressor from 'compressorjs';
new Compressor(files, {
retainExif: true,
checkOrientation: true,
success: (res) => {
this.handleFile(res);
},
error(err) {
console.log(err.message);
},
})