一直在用canvas,但是canvas到底是什么,不是很清楚。
今天就研究一下,弄懂它。
google中关于canvas的解释是:
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).
我用半拉子英语翻译下:
想要绘制一些东西的时候,你需要4个基本的组件:
一个bitmap来存储像素,
一个canvas来组织draw的调用(调用的结果,是将draw的内容绘制进bitmap中),
一个绘图基元(比如:矩形,线,文本,位图),
和一个画笔(用来描述绘制时候的颜色和样式)。
这里面有个bitmap,跟canvas息息相关。
1、Bitmap到底是什么?
Bitmap,就是位图,就是最小单位由象素构成的图,由每一个像素点组成的。每个像素点都包含颜色,饱和度,等信息。
位图放大,或者缩小,就会失真。举个例子,家里的电视,你离3米远看,可以正常看到图像,但是,你如果离10cm远看,只能看一个一个彩色的点,是局部的。这就是位图放大后,失真的效果。
2、bitmap跟canvas怎么结合的?
我们绘制的时候,都是用canvas去draw,draw完的结果,都是要展示的,就是用bitmap来展示的。
所以,绘制时候canvas必须要有bitmap。