很早之前就接触过Canvas,平时也都会用到一些,但是一些用法我自己却一直没有用到。
首先说一下canvas,他就是我们所说的画布,那这块画布有多大呢(准确点应该说画布的显示区域有多大),他其实就是我们View的大小(我这里指的是View的onDraw()方法里得到的Canvas)。好了说明了Canvas的大小剩下的就好说了。Canvas有个translate方法,那这个移动的到底是哪个基准点呢,它其实参照就是canvas的左上角,因为是平移,所以哪个基准点其实是为所谓的。但是大家都知道canvas有个rotate的方法,用来旋转,这个默认的基准点是谁呢,我之前一直以为是绘画的中心点,其实不是,它默认的是canvas的左上角,如果需要旋转绘画的中心点的话可以调用canvas.rotate(degrees, px, py)。degrees就是旋转的角度,px,py即旋转的中心点。
当然大家还需要知道Canvas的save和restore方法,用于保存Canvas的状态及得到上一个保存的状态。