微信小程序保存二维码的过程

1.使用wx.canvasToTempFilePath将二维码绘制到画布上。

复制代码
const ctx = wx.createCanvasContext('qrcodeCanvas');
ctx.drawImage('qrcodePath', 0, 0, canvasWidth, canvasHeight);
ctx.draw(false, () => {
  wx.canvasToTempFilePath({
    x: 0,
    y: 0,
    width: canvasWidth,
    height: canvasHeight,
    destWidth: canvasWidth,
    destHeight: canvasHeight,
    canvasId: 'qrcodeCanvas',
    success: (res) => {
      const tempFilePath = res.tempFilePath;
      // 接下来进行保存操作
    },
    fail: (err) => {
      console.error('canvasToTempFilePath failed', err);
    }
  });
});

2.利用wx.saveImageToPhotosAlbum保存绘制的二维码图片到相册。

复制代码
wx.saveImageToPhotosAlbum({
  filePath: tempFilePath,
  success: (res) => {
    console.log('saveImageToPhotosAlbum success', res);
    wx.showToast({
      title: '保存成功',
      icon: 'success',
      duration: 2000
    });
  },
  fail: (err) => {
    console.error('saveImageToPhotosAlbum failed', err);
    wx.showToast({
      title: '保存失败',
      icon: 'none',
      duration: 2000
    });
  }
});

需要注意的是,保存图片到相册需要用户授权,因此在调用wx.saveImageToPhotosAlbum之前,开发者需要先调用wx.getSetting获取用户的授权状态,并在用户同意授权后才能执行保存操作。

3.另外,在小程序的app.json文件中,需要添加相应的权限声明:

复制代码
{
  "permission": {
    "scope.userLocation": {
      "desc": "保存图片到相册"
    }
  }
}
相关推荐
地球@+jdhb447 小时前
2026最新小红书无水印保存教程:手机电脑全场景实测,原图画质直接拿
智能手机·notepad++
kyriewen8 小时前
一个人+Cursor,7天上线付费小程序:第1天我就想放弃了
前端·微信小程序·cursor
暗不需求10 小时前
从路虎汽车小程序看微信小程序开发的最佳实践
前端·javascript·微信小程序
博客zhu虎康11 小时前
小程序:解决小程序发布上线后无分享功能
小程序
tuanyuan99o20 小时前
2026商城小程序的安全怎么保障?防止黑客攻击和数据泄露
安全·小程序
facetarzan1 天前
微信小程序文件下载
小程序·文件预览·文件下载
aiguangyuan1 天前
微信小程序服务商
微信小程序·前端开发
一支帆1 天前
微信小程序-情侣点餐
java·微信小程序·情侣点餐
Slow菜鸟1 天前
AI开发-微信小程序(全流程提示词)
人工智能·微信小程序
橘子海全栈攻城狮1 天前
【最新源码】鸟博士微信小程序 023
spring boot·后端·web安全·微信小程序·小程序