canvas绘制分为如下几类:
- 1、几何图形绘制
- 2、文本绘制
- 3、颜色绘制
- 4、图片绘制
一、几何图形绘制
1. drawLine
简单的绘制一条线
canvas.drawLine(startX, startY, endX, endY, paint)
2. drawLines
如果你想要绘制多条线,相比于多次执行drawLine
,我们推荐使用drawLines
来完成,我们只需要提供一个坐标值的平面float
数组列表,如下所示。
canvas.drawLines(
floatArrayOf(
startFirstX, startFirstY, endFirstX, endFirstY,
startSecondX, startSecondY, endSecondX, endSecondY),
paint)
3. drawPoint
虽然您可以通过以相同的起点和终点坐标画一条线来画点,这是一种技巧。我们可以使用专门提供的绘制点的方法,drawPoint
函数。
canvas.drawPoint(coordinateX, coordinateY, paint)
4. drawPoints
和lines
一样,你可以通过提供一个平面坐标数组来绘制多个点。
canvas.drawPoints(
floatArrayOf(
startX, startY,
startSecondX, startSecondY),
paint)
5. drawRect
使用坐标或Rect
类绘制矩形。
canvas.drawRect(
Rect(startX, topY, endX, bottomY),
paint)
6. drawRoundRect
如果你想要绘制一个圆角矩形,可以使用drawRoundRect
,它和drawRect
法法很像,但是增加了两个参数radiusX
和radiusY
来定义圆角的弯曲程度。
canvas.drawRoundRect(rect, radiusX, radiusY, projectResources.paint)
如果radiusX
等于radiusY
,它将绘制均匀的圆角。
当radiusX = radiusY
时,它将具有常规的圆角,如下所示:
如果radiusX
大于 radiusY
时,就会出现下面这样的效果:
如果radiusX
小于 radiusY
时,又变成了这样:
7. drawCircle
drawCircle
非常简单,它只需要一个圆心坐标和半径。
canvas.drawCircle(
centerCoordinateX, centerCoordinateY,
radius,
paint)