微信小程序生成海报—canvas

2019-06-06  本文已影响0人  莹莹宋

使用场景

了解小程序中的canvass

canvas在小程序中作为原生组件出现,也有关于canvas的一些用法

创建一个canvas

//html
<canvas canvas-id="canvas"></canvas>
//js
//画了一个白色背景

let ctx = wx.createCanvasContext('canvas', this);
    ctx.rect(0, 0, 420, 333);
    ctx.setFillStyle('white');
    ctx.fill();
    ctx.draw();
//画一张图片
wx.downloadFile({
   url: url,//图片
   success: (res) => {
   let imageFilePath = res.tempFilePath;
   ctx.drawImage(imageFilePath, 0, 0, 840, 840, 0, 0, 442, 420);
   ctx.draw(true);
    })
})

保存一个canvas图片

wx.canvasToTempFilePath({
    canvasId: 'canvas',
    quality: 1,
    success: (res) => {
         let filePath = res.tempFilePath;//获取图片地址
         this.setData({
                    imageUrl: res.tempFilePath,//图片地址保存到本地
                })
            }
        }, this)

图片保存到用户手机

wx.saveImageToPhotosAlbum({
       filePath:this.data.imageUrl,
       success() {
             alert('保存成功');
        }
})

分享使用图片

onShareAppMessage() {
            return {
                title: "商品分享",
                path: '/pages/goodsDetail/goodsDetail' ,
                imageUrl: this.data.imageUrl
            }
    }

根据以上功能的组合搭配可以实现用户分享图片使用图片,也可以生成图片保存到本地然后分享到朋友圈。

上一篇下一篇

猜你喜欢

热点阅读