Android Canvas 绘图
jopen
11年前
先介绍一下Canva、Paint、RectXX、 Bitmap、Drawable之间的关系:
Canvas:封装了多种绘图所用的方法,他就相当于一个图形画法的集合,你需要画什么图形调用相应的drawXXX()方法就可以实现。他除了封装了画图方法还封装了对图片进行裁剪的clipXXX()方法。
Paint:现在有了画图的方法集合,也就是有了画图的技术说明,那怎么去实际去画这个图呢?现在就需要一个大师傅进行操刀进行画图,这个实际进行绘画的人就是Paint,每个师傅有他各自的特点,有的刀工好,有的刻花好,TextPaint就是写字比较好。
RectXX:这个类族的作用就是为大师傅提供一个施展才华的舞台,android使用Canvas提供的方法,请Paint在RectXX上进行绘画,得到的结果就存储在一个内存空间里,这个空间就是一个Bitmap
Drawable:上述的操作都是在内存中进行的,是看不见的,而Drawable就是一个真实接口,他将上述内存中的影封装起来提供给外界来展示,它将上述三者的结果表现出来。
说完上述几者之间的关系,下面说说在画图时的坐标问题:
如下图所示:
Canvas绘图时的坐标原点也是在左上角。
好了关于Canvas绘图等之间的关系就先介绍到这里。