Android_Canvas_Bitmap_关系


@作者 : 西野奈留
@博客:http://blog.csdn.net/narunishino
-2016/4/09-


Canvas:(中文翻译)n.帆布,vt.用帆布覆盖。

primitive:(中文翻译)n.原始事物。

http://developer.android.com/reference/android/graphics/Canvas.html

android.graphics.Canvas

Class Overview //文档中的解释。
The Canvas class holds the “draw” calls. To draw something, you need 4 basic components:
1. A Bitmap to hold the pixels,
2. a Canvas to host the draw calls (writing into the bitmap),
3. a drawing primitive (e.g. Rect, Path, text, Bitmap),
4. a paint (to describe the colors and styles for the drawing).

平时看到的资料都把Canvas比喻成画布。

今天深入的去了解了一下,似乎不是画布哦,应该比喻成 画板 更加贴切。

而bitmap是画板(Canvas)上的那张白纸。

Canvas的2个构造方法:

1.public Canvas ()

Construct an empty raster canvas. Use setBitmap() to specify a bitmap to draw into. The initial target density is DENSITY_NONE; this will typically be replaced when a target bitmap is set for the canvas.

2.public Canvas (Bitmap bitmap)

Construct a canvas with the specified bitmap to draw into. The bitmap must be mutable.

从第一个构造方法的解释中可以看到,如果不给Canvas指定bitmap的话,系统会自动给Canvas一个bitmap1。

这时候如果你指定一个bitmap2给Canvas的话,你指定的这个bitmap2就会把原来系统默认的bitmap1给替换掉。

也就是说,你把画板(Canvas)中的原来就有的白纸(bitmap1)换成了你自己的白纸(bitmap2)(如果你之前在上面(bitmap2)画过东西的话就不是白纸了,反正就是换成你自己的纸)。


从源码的角度来解释的话,请看这里http://lwn.me/2014/04/13/canvas/

-End-


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,我可以为您解答关于Java CanvasAndroid.graphics.Canvas的基本使用。 Java Canvas是一个在awt,swing等GUI框架中用于绘制图形的类,它提供了一个类似画布的面板,我们可以在上面绘制各种图形和文字。 下面是Java Canvas的基本使用方法: 1. 创建一个Canvas对象: ``` Canvas canvas = new Canvas(); ``` 2. 获得一个Graphics对象: ``` Graphics g = canvas.getGraphics(); ``` 3. 使用Graphics对象绘制图形: ``` g.drawLine(0, 0, 100, 100); g.drawRect(50, 50, 100, 100); g.drawOval(100, 100, 50, 50); g.drawString("Hello, World!", 200, 200); ``` 这些方法可以绘制线条,矩形,椭圆和文本。 在Android中,Canvas是一个类用于绘制图形和文字,我们可以使用它来自定义视图或绘制自己的UI元素。 下面是Android.graphics.Canvas的基本使用方法: 1. 创建一个Canvas对象: ``` Canvas canvas = new Canvas(bitmap); ``` 这里的bitmap是我们要绘制的位图对象。 2. 使用Canvas对象绘制图形: ``` Paint paint = new Paint(); paint.setColor(Color.RED); paint.setStrokeWidth(5); canvas.drawLine(0, 0, 100, 100, paint); canvas.drawRect(50, 50, 100, 100, paint); canvas.drawOval(100, 100, 150, 150, paint); canvas.drawText("Hello, World!", 200, 200, paint); ``` 这些方法可以绘制线条,矩形,椭圆和文本。我们可以使用Paint对象来设置绘制的颜色,线条宽度等属性。 以上就是Java CanvasAndroid.graphics.Canvas的基本使用方法,希望能对您有所帮助。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值