问题描述:
ios上传图片到服务器,渲染到页面上之后会旋转90度,android显示正常。
上传图片方案:
选择按钮change事件,实例化fileReader,调它的readAsDataURL并把原生File对象传给它, 监听它的onload事件,load完读取的结果就在它的result属性里了。它是一个base64格式的,可直接赋值给一个img的src.
ios拍照上传横屏方案:
ios相机拍照时自动加入了方向传感器(Orientation属性 ),能够记录相机拍摄的方向,相机可以根据这个方向信息,系统会对照片进行旋转,我们可以根据图片信息所提供EXIF(可交换图像文件格式:Exchangeable image file format),Orientation 旋转等来判断图片是否上传前图片是否需要相应的旋转
具体的旋转方案就是利用画布,先把图片放到画布,转换base64 ,转换回图片文件 上传到服务器
$file.on('change', function(e) {
if(canclick) {
curFile = this.files;
fileList = fileList.concat(Array.from(curFile));
if($(".file-list").length <= 0) {
$("#choose-file").attr("title", "未选择文件");
} else {
for(va