微信小程序 canvas 分享图片 生成图片

onShow() {
    var that =this
       //2. canvas绘制文字和图片
      const ctx = wx.createCanvasContext('myCanvas');
      var imgPath = '../../image/1.png'
      var bgImgPath = '../../image/zny.png';
      var userImgPath = '../../image/zny.png';
      ctx.drawImage(imgPath, 0, 0, 320, 500);
      ctx.setFillStyle('white')
      ctx.fillRect(0, 0, 0, 0);
      ctx.drawImage(bgImgPath,  35, 403, 60, 60);
      ctx.drawImage(userImgPath,  30, 35, 70, 70);
      ctx.drawImage(imgPath,    410, 610, 160, 160);

      ctx.setFontSize(14)
      ctx.setFillStyle('#000')
      ctx.fillText('妖妖灵', 100, 60)

      ctx.setFontSize(16)
      ctx.setFillStyle('#999999')
      ctx.fillText('已坚持 100 天', 110, 199)
      
      ctx.setFontSize(16)
      ctx.setFillStyle('#3366FF')
      ctx.fillText('100', 214, 258)
      ctx.fillText('第 10000 名', 174, 283)

      // ctx.setFontSize(24)
      // ctx.fillText('长按扫码查看详情', 30, 770)
      ctx.draw()
  },

上面 处理图片 向图片增加 需求 的 数据文字 以及图片等

下一步 将canvas生成图片

wx.canvasToTempFilePath({ //将canvas生成图片
      canvasId: 'myCanvas',
      x: 0,
      y: 0,
      width: 320,
      height: 500,
      success: function (res) {
        let urls = res.tempFilePath //图片临时路径
        // let urls = '../../image/guide.jpg' //图片临时路径
        wx.showShareImageMenu({ //分享给朋友
          path: urls,
          success: (res) => {
            console.log("分享成功:", res);
          },
          fail: (err) => {
            console.log("分享失败:", err);
            wx.showToast({
              title: "分享失败",
              duration: 2000
            })
          },
        })
      }
    }, this)
  },

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值