自定义view之Canvas构造 new Canvas(Bitmap)中对canvas和bitmap的关系

一 Canvas的定义:

The Canvas class holds the "draw" calls. To draw something, you need 4 basic components: A Bitmap to hold the pixels, a Canvas to host the draw calls (writing into the bitmap), a drawing primitive (e.g. Rect, Path, text, Bitmap), and a paint (to describe the colors and styles for the drawing).

翻译:

Canvas类保存“draw”调用。要绘制某些内容,需要4个基本组件:一个用于保存像素的位图【即bitmap】、一个用于承载绘制调用的画布(写入位图)【画布即canvas】、一个绘图源(例如rect、path、text、bitmap)和一个画笔(描述绘图的颜色和样式)【即paint】。

二 canvas 带参构造函数:

public Canvas (Bitmap bitmap)

说明:构造一个带有给定bitmap的画布,画东西到bitmap里面去,这个bitmap必须是可变的。画布的初始密度和给定的bitmap的密度一致。

三 canvas  和 bitmap关系

我们画的东西都是存放在指定的Bitmap上的。canvas只是起到一个中介的作用,它承载了画的方法(比如drawLine,drawCircle等) 会画线 画圆保存到bitmap中 

四 基本操作:

// 创建一个指定大小的bitmap  用于保存 canvas 绘制的一系列操作
Bitmap bitmap = Bitmap.createBitmap(100, 100, Bitmap.Config.RGB_565);
// 将bitmap 设置给canvas
Canvas canvas = new Canvas(bitmap);
// 执行canvas 绘制颜色的操作  【会保存到创建的bitmap中】
canvas.drawColor(mContext.getResources().getColor(R.color.read_bg_1));
// 将保存结果展示出来
mImageView.setImageBitmap(bitmap);

 

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值