绘制流程
布局定义
在我们的布局里要声明canvas的定义如下,可以声明class布局样式,width和height是必须的,因为如果没有就绘制不了。
canvas-id也是必须的,我们需要通过id找到对一个你的canvas对象,来做操作
<canvas class="poster_canvas" canvas-id="mini_poster":style="{ width: canvasW + 'px', height: canvasH + 'px' }">
</canvas>
绘制背景图
所有绘制操作都要通过createCanvasContext创建好canvas对象来进行, 这里this.bgShareInvite 是一个图片url,这里是获取到图片的信息,然后通过 drawImage 绘制出来 参数需要绘制的坐标(x,y)和绘制的图片宽高。
let ctx = uni.createCanvasContext('mini_poster', this)
let info = await uni.getImageInfo({src: this.bgShareInvite
})
console.log('info:', info[1]);
//绘制背景图
ctx.drawImage(info[1].path, 0, 0, this.canvasW, this.canvasH)
绘制背景
可以绘制各种底色的背景,带圆角或者不带!这里建议封装好2个方法,如下,