1. 在小程序页面的 .wxml 文件中添加 <canvas> 组件:
<view class="canvas-container">
<canvas canvas-id="myCanvas" style="width: 100%; height: 100%;"></canvas>
</view>
2. 在页面的 .js 文件中编写绘图逻辑:
Page({
onReady: function () {
// 获取 canvas 上下文
const ctx = wx.createCanvasContext('myCanvas');
// 设置文本样式
ctx.setFontSize(20);
ctx.setFillStyle('black');
// 绘制文本
ctx.fillText('Hello, 微信小程序!', 20, 30);
// 绘制带边框的矩形
ctx.setStrokeStyle('red');
ctx.strokeRect(10, 10, 200, 50);
// 绘制带填充的矩形
ctx.setFillStyle('yellow');
ctx.fillRect(220, 10, 200, 50);
// 绘制带渐变的矩形
const gradient = ctx.createLinearGradient(10, 70, 10, 120);
gradient.addColorStop(0, 'red');
gradient.addColorStop(1, 'blue');
ctx.setFillStyle(gradient);
ctx.fillRect(10, 70, 200, 50);
// 绘制带阴影的圆形
ctx.setShadow(10, 10, 5, 'rgba(0, 0, 0, 0.5)');
ctx.beginPath();
ctx.arc(150, 150, 30, 0, 2 * Math.PI);
ctx.setFillStyle('green');
ctx.fill();
ctx.closePath();
// 绘制图片
ctx.drawImage('/images/sample.jpg', 10, 200, 150, 100);
// 绘制到 canvas 上
ctx.draw();
}
});
在这个示例中,我们使用了 Canvas 2D 上下文提供的一些常用方法,例如 setFontsize、setFillStyle、fillText 等,来设置文本样式并绘制文本。还演示了如何绘制矩形、圆形、带阴影的图形以及如何绘制图片。
请注意,你需要替换示例中的图片路径为你自己项目中的图片路径。
转载请注明出处:http://www.zyzy.cn/article/detail/1002/微信小程序