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°,当然也有方法可以解决。 不过兼容问题我是没办法了(如果有更好的方法也欢迎分享) 最后 确定了还是选择第一种方法。
以上。。。

本文讲述了开发者在iOS中使用HTML5 canvas获取照片并压缩转为Base64格式上传过程中遇到的问题,包括兼容性挑战、LRZ插件局限性以及图片自动旋转的解决方案。重点讨论了canvas压缩对非JPEG格式的限制和最后采用的拍照功能替代方案。

376

被折叠的 条评论
为什么被折叠?



