前面介绍过了有关绘制的基础知识,包括Color、坐标、Path、Paint等,今天主要梳理下Canvas的相关知识点。Canvas一般称为画布,但其实它只是一套画图的API,使用这些API可以对内存进行操作,进而画出想要的图形。
打开android.graphics包下的Canvas类,可以看到其内部提供的方法还是比较多的,为了便于理解,对方法进行分类总结。
绘制操作
绘制的主要方法如下图
正如这些的方法名一样,它们的功能非常的明确,也非常容易理解。
- drawArc:画扇形或者将弧两端连接形成的图形
- drawARGB:绘制ARGB,用于颜色
- drawBitmap:绘制bitmap
- drawBitmapMesh:用于图像扭曲
- drawCircle:绘制圆
- drawColor:绘制颜色
- drawLine:绘制线段
- drawLines:绘制多个线段
- drawOval:绘制椭圆
- drawPaint:将画笔绘制到画布上
- drawPatch:绘制NinePatch
- drawPath:将路径绘制到画布上
- drawPicture:绘制图片
- drawPoint:绘制点
- drawPoints:绘制多个点
- drawRect:绘制矩形
- drawRGB:绘制颜色
- drawRoundRect:绘制圆角矩形
- drawText:绘制文字
- drawTextOnPath:将文字按照某个路径绘制
画布操作
变换
平移变化:调用translate方法实现,传入对应的x,y坐标平移距离
/**
* Preconcat the current matrix with the specified translation
*
* @param dx The distance to translate in X
* @param dy The distance to translate in Y
*/
p