接到一个包含《头像裁剪》的功能需求,且需要从公众号跳转到该页面来,由于我最近一直在做微信小程序开发,于是很自然地采用了微信小程序的开发模式。
后端指定图片的格式为base64,于是我又很自然的使用了wx.getFileSystemManager().readFileSync()API来将图片格式转为base64格式。
wx.getFileSystemManager().readFileSync(path, "base64")
参数说明:path为图片路径,“base64”为编码方式。
起初在微信小程序运行时一切正常。
但需求方觉得只为了一个页面而发布一个小程序不太合适,于是提出将其发布为H5。
于是后来再进行图像裁剪的时候,控制台抛出了以下错误:
API `getFileSystemManager` is not yet implemented
后来查阅资料,才发现H5是不支持该方法的!!!
而正当我在思考应该如何将图片转成base64的时候,在uView的官方文档发现了这样一段有趣的文字:
即在H5端使用AvatarCropper头像裁剪,得到的图片格式默认就为base64,真是柳暗花明!
最后还有一个未解决的小问题:即在H5端发布后,经过AvatarCropper组件剪裁后的图片方向是不对的,如下:
希望有了解原因的大佬指点一二。