1.首先html:
移动端拍照压缩上传
注:capture =“camera” 在ios中只有拍照功能(不能选择相册, 如需添加 需判断环境

2.通过 change方法 获取file文件,转码成base64格式 画图 生成canvas
移动端拍照压缩上传
3. 压缩图片及图片转码 上传
移动端拍照压缩上传
!移动端拍照压缩上传
到这基本就完了 。
坑:canvas压缩只能压缩jpg ,其他的图片格式 canvas.toDataURL(‘image/jpeg’, 0.2); 第二个参数不生效

一开始用的是lrz 插件 ,这个插件 说的很好听啊 兼容安卓和ios 但是完成之后 因为我上传的入参是数据流 需要获取到它的file ,但是在安卓环境下 data.get(‘file’) 方法不兼容 。。 还有一点 就是 拍完照后会自动旋转90°,当然也有方法可以解决。 不过兼容问题我是没办法了(如果有更好的方法也欢迎分享) 最后 确定了还是选择第一种方法。
以上。。。

相关文章: