uniapp(微信小程序) base64图片保存
1.在页面上写上触发方法
2.在JS上获取微信小程序相机功能
saveImg(qrcode) {let that = this;uni.getSetting({success: (res) => {console.log(res);if (!res.authSetting["scope.writePhotosAlbum"]) {uni.showModal({title: "警告",content: "检测到您没您未授权相册权限,点击确定获取授权。",success: function (res) {if (res.confirm) {uni.authorize({scope: "scope.writePhotosAlbum",success() {// 用户已经同意that.saveImgToAlbum(qrcode);},fail(err) {console.log("用户拒绝授权相册");},});}},});} else {that.saveImgToAlbum(qrcode);}},fail: () => {console.log("点击了拒绝");},});},
注意:此时qrcode的格式是base64 需要通过saveImgToAlbum的方法去转换一下
3.通过saveImgToAlbum方法转换并保存下来
// 保存二维码图片到相册saveImgToAlbum(qrcode) {let base64 = qrcode.replace(/^data:image\/\w+;base64,/, ""); //去掉data:image/png;base64,var fileManager = uni.getFileSystemManager();let that=thisfileManager.writeFile({filePath: wx.env.USER_DATA_PATH + "/img.jpg", // 指定图片的临时路径data: base64, // 要写入的文本或二进制数据encoding: "base64", // 指定写入文件的字符编码success: (res) => {console.log("写入文件成功", res);console.log(wx.env.USER_DATA_PATH + "/img.jpg");uni.saveImageToPhotosAlbum({// 保存图片到相册// filePath: wx.env.USER_DATA_PATH + "/img.jpg",filePath: wx.env.USER_DATA_PATH + '/img.jpg',success: function (res) {uni.showToast({title: "保存成功",});},fail: function (err) {console.log("保存失败", err);},});},file: (err) => {console.log("写入文件失败", err);},});},
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
