微信小程序canvas绘制圆角矩形

canvas.save()   // 保存之前的绘图
				
canvas.beginPath()   // 开始绘制
				
canvas.setFillStyle('transparent')   // 填充边缘

// arc对应参数含义
// canvas.arc('圆心x轴坐标', '圆心Y轴坐标', '圆的半径', '起始弧度', '终止弧度', '弧度是否逆时针方向:boolean')
//left - 矩形x轴位置  |    top - 矩形Y轴位置    |    width - 矩形宽度    |    height - 矩形高度

canvas.arc(left + width - radius, top + height - radius, radius, 0, Math.PI * 0.5)    // 右下角
				
canvas.lineTo(left + radius, top + height)    // 下边线
				
canvas.arc(left + radius, top + height - radius, radius, Math.PI * 0.5, Math.PI)    // 左下角
				
canvas.lineTo(left, top + radius)    // 左边线
				
canvas.arc(left + radius, top + radius, radius, Math.PI, Math.PI*1.5)    // 左上角
				
canvas.lineTo(left + width - radius, top)     // 上边线
				
canvas.arc(left + width - radius, top + radius, radius, Math.PI * 1.5, Math.PI * 2)    // 右上角
				
canvas.lineTo(left + width, top + height - radius)    // 右边线
				
canvas.closePath()    // 连接之前绘制的线段
				
canvas.setStrokeStyle('rgba(134, 157, 156, 0.5)')    // 设置边框颜色   支持rgba 和 十六进制  格式
				
canvas.stroke()    // 绘制矩形
				
// 如果需要在矩形内放入数据,并且数据有可能超出矩形,建议添加下面方法 防止内容溢出
canvas.clip()  //  剪切边框内的内容

canvas.restore() // 恢复之前的绘图```

上一篇:Canvas 如何画一个四分之一圆


下一篇:1px边框线问