Android-Graphics学习之:canvas

1.canvas介绍:

Android中大部分2D使用的api都在android.graphics和android.graphics.drawable包中。他们提供了图形处理相关的: Canvas、ColorFilter、Point(点)和RetcF(矩形)等,还有一些动画相关的:AnimationDrawable、 BitmapDrawable和TransitionDrawable等。以图形处理来说,我们最常用到的就是在一个View上画一些图片、形状或者自定义的文本内容,这里我们都是使用Canvas来实现的。你可以获取View中的Canvas对象,绘制一些自定义形状,然后调用View. invalidate方法让View重新刷新,然后绘制一个新的形状,这样达到2D动画效果。

下面转载对CANVAS的介绍:

Canvas的意思是画布,表现在屏幕上就是一块区域,我们可以再上面使用各种API绘制我们想要的东西。可以说,Canvas贯穿整个2D Graphics,android.graphics中的所有类,几乎都于Canvas有直接或间接的联系。所以了解Canvas是学习2D Graphics的基础。

Android官方文档对Canvas的简介很好的介绍了Canvas的使用:

[java]  view plain copy
  1. The Canvas class holds the "draw" calls. To draw something, you need 4 basic components: A Bitmap to hold the pixels,  
  2.  a Canvas to host the draw calls (writing into the bitmap), a drawing primitive (e.g. Rect, Path, text, Bitmap),   
  3. and a paint (to describe the colors and styles for the drawing).   
一个Canvas对象有四大基本要素:

1、一个用来保存像素的Bitmap

2、一个Canvas在Bitmap上进行绘制操作

3、绘制的东西

4、绘制的画笔Paint



2.canvas对象获取:

1.通过重写View.ondraw方法View中的Canvas对象会被当做参数传递过来,我们操作这个Canvas,效果会直接反应在View中。

2.自己创建一个Canvas对象:

Bitmap b = Bitmap.createBitmap(100, 100, Bitmap.Config.ARGB_8888);   
Canvas c = new Canvas(b);

3.Canvas几个重要的操作:

1.translate和rotate

translate(x,y):将画布坐标原点X轴方向平移X,Y轴平移Y

rotate:旋转画布

2.save和restore

保存当前的matrix clip translate等操作。在save()之后的这些操作将保存到画布中去,当调用restore()的时候,将还原canvas到调用save()之前的状态。


参考文章:http://blog.csdn.net/lonelyroamer/article/details/8264189

http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2012/1212/703.html

http://www.verydemo.com/demo_c131_i3507.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值