微信小程序的canvas绘制是一种非常有用的功能,它可以让开发者在小程序中创建出各种各样的图形和动画。它可以让开发者在小程序中创建出复杂的图形,如折线图、柱状图、饼图、雷达图、地图、3D模型等。此外,它还可以用于创建动画,如游戏动画、特效动画、广告动画等。
微信小程序canvas的使用非常方便,开发者只需要在wxml文件中声明一个canvas标签即可:
然后在js文件中通过wx.createContext()方法来获取一个CanvasRenderingContext2D对象:
let context = wx.createContext();
之后就可以使用context对象来进行canvas的相关操作了。例如,使用context.setStrokeStyle()方法来设置描边样式:
context.setStrokeStyle('#000000');
或者使用context.fillRect()方法来在canvas上绘制一个正方形:
context.fillRect(0, 0, 100, 100);
最后通过wx.drawCanvas()方法将内容呈现出来即可。例如:
wx.drawCanvas({ canvasId: 'myCanvas', actions: context.getActions() });
绘图接口和方法
参数 | 类型 | 必填 | 说明 | 最低版本 |
---|---|---|---|---|
x | Number | 否 | 画布x轴起点(默认0) | 1.2.0 |
y | Number | 否 | 画布y轴起点(默认0) | 1.2.0 |
width | Number | 否 | 画布宽度(默认为canvas宽度-x) | 1.2.0 |
height | Number | 否 | 画布高度(默认为canvas高度-y) | 1.2.0 |
destWidth | Number | 否 | 输出图片宽度(默认为width) | 1.2.0 |
destHeight | Number | 否 | 输出图片高度(默认为height) | 1.2.0 |
canvasId | String | 是 | 画布标识,传入 <canvas/> 的 cavas-id |
|
fileType | String | 否 | 目标文件的类型,只支持 "jpg" 或 "png"。默认为 "png" | 1.7.0 |
quality | Number | 否 | 图片的质量,取值范围为 (0, 1],不在范围内时当作1.0处理 | 1.7.0 |
success | Function | 否 | 接口调用成功的回调函数 | |
fail | Function | 否 | 接口调用失败的回调函数 | |
complete | Function | 否 | 接口调用结束的回调函数(调用成功、失败都会执行) |
wx.canvasToTempFilePath({
x: 100,
y: 200,
width: 50,
height: 50,
destWidth: 100,
destHeight: 100,
canvasId: "myCanvas",
success: function(res) {
console.log(res.tempFilePath)
}
})
绘图接口和方法
绘图接口和方法canvasContext.save定义保存当前的绘图上下文。restore定义恢复之前保存的绘图上下文。例子const ctx = wx.create...
CREATE PUBLICATION — 定义一个新的发布大纲CREATE PUBLICATION name[ FOR TABLE [ ONLY ] table_name [ * ] [, ...]| FOR ALL ...
CREATE USER — 定义一个新的数据库角色大纲CREATE USER name [ [ WITH ] option [ ... ] ]这里 option 可以是:SUPERUSER | NOS...
DROP ACCESS METHOD — 移除一种访问方法大纲DROP ACCESS METHOD [ IF EXISTS ] name [ CASCADE | RESTRICT ]简介 DROP ACCESS M...
XSL-FO list-block 对象XSL-FO 参考手册定义和用法 fo:list-block 对象用于格式化整个列表。 下面列举了四个用于创建列表的 XSL-...
XSD 仅含文本 在XMLSchema复合元素的类型中,包括仅含文本的复合元素。仅含文本的复合元素可包含文本和属性。仅含文本的复合元素...
XSLT xsl:choose 元素本节将为你介绍 xsl:choose 元素的使用。xsl:choose 元素用于结合 xsl:when 和 xsl:otherwise 来表达多重条...
XSLT xsl:decimal-format 元素本节是对 XSLTxsl:decimal-format元素使用的介绍。 完整的 XSLT 元素参考手册定义和用法 xsl:decim...
XML DOM 获取节点值 再本节内容中,你将了解如何通过特定的方法来在 DOM 中获取节点值。nodeValue 属性用于获取节点的文本值。 g...