Canvas
This commit is contained in:
@@ -29,15 +29,8 @@ Matrix(矩阵) | getMatrix, setMatrix, concat | 实际画布的位移,缩放
|
|||||||
绘制有两种方法,drawPicture 和 drawBitmap,接下来我们一一了解。
|
绘制有两种方法,drawPicture 和 drawBitmap,接下来我们一一了解。
|
||||||
|
|
||||||
### drawPicture
|
### drawPicture
|
||||||
drawPicture有三种方法:
|
|
||||||
```
|
|
||||||
public void drawPicture (Picture picture)
|
|
||||||
|
|
||||||
public void drawPicture (Picture picture, Rect dst)
|
关于drawPicture一开始还是挺让人费解的,不过嘛,我们接下来慢慢研究一下它的用途。
|
||||||
|
|
||||||
public void drawPicture (Picture picture, RectF dst)
|
|
||||||
```
|
|
||||||
关于drawPicture还是挺让人费解的,不过嘛,我们慢慢研究一下它的用途。
|
|
||||||
|
|
||||||
既然是drawPicture就要了解一下什么是**Picture**。 顾名思义,Picture的意思是图片。
|
既然是drawPicture就要了解一下什么是**Picture**。 顾名思义,Picture的意思是图片。
|
||||||
|
|
||||||
@@ -88,7 +81,7 @@ public void writeToStream (OutputStream stream) | (已废弃)将Picture中内容
|
|||||||
|
|
||||||
#### 使用示例:
|
#### 使用示例:
|
||||||
|
|
||||||
**准备工作**
|
**准备工作:**
|
||||||
``` java
|
``` java
|
||||||
// 1.创建画笔
|
// 1.创建画笔
|
||||||
private Picture mPicture = new Picture();
|
private Picture mPicture = new Picture();
|
||||||
@@ -124,15 +117,23 @@ public void writeToStream (OutputStream stream) | (已废弃)将Picture中内容
|
|||||||
|
|
||||||
```
|
```
|
||||||
|
|
||||||
** 具体使用 **
|
**具体使用:**
|
||||||
|
|
||||||
Picture虽然方法就那么几个,但是具体使用起来还是分很多情况的,总体上可以分为三种:
|
Picture虽然方法就那么几个,但是具体使用起来还是分很多情况的,总体上可以分为三种:
|
||||||
|
|
||||||
_1.使用Picture提供的draw方法绘制。_
|
_1.使用Picture提供的draw方法绘制。_
|
||||||
|
|
||||||
_2.使用Canvas提供的drawPicture方法绘制。_
|
_2.使用Canvas提供的drawPicture方法绘制。_
|
||||||
|
|
||||||
_3.将Picture压缩成位图Bitmap然后绘制。_
|
_3.将Picture转换成位图Bitmap然后绘制。_
|
||||||
|
|
||||||
|
先分析三种方法主要区别:
|
||||||
|
|
||||||
|
主要区别 | 分类 | 简介
|
||||||
|
--- | --- | ---
|
||||||
|
矢量图与位图 | 1,2为矢量图<br/>3是位图 | **位图:** 也叫做点阵图,删格图象,像素图,最小单位由象素构成,缩放会失真。<br/> **矢量图:** 也叫做向量图,由坐标和运算得出,缩放不失真。
|
||||||
|
是否对Canvas有影响 | 1有影响<br/>2,3不影响 | 此处指绘制完成后是否会影响Canvas的状态(Matrix clip等)
|
||||||
|
可操作性强弱 | 1可操作性较弱<br/>2,3可操作性较强 | 此处的可操作性可以简单理解为对绘制结果可控程度。
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user