Android绘图三大基本类

0.169字数 790阅读 3422

Android绘图三大基本类


Android绘图的三个基本类:

  • Bitmap:相当于我们绘制出来的图像
  • Paint:相当于我们绘图所用的画笔
  • Canvas:相当于我们绘图所用的画布

1. Bitmap


玩转Android Bitmap

2. Paint


Paint拥有绘制几何,文本,位图的风格与颜色信息。

1. 新建一个Paint对象


Paint有三个构造方法,我们可以通过这三个构造方法创建Paint对象:

  • Paint():用默认设置创建一个Paint对象
  • Paint(int flags):用特殊标记创建一个Paint对象
  • Paint(Paint paint):用指定Paint对象的参数初始化一个新的Paint对象

2. 常用方法


  • setARGB(int a, int r, int g, int b):设置画笔颜色
  • setAntiAlias(boolean aa):设置是否抗锯齿
  • setColor(int color):设置画笔颜色
  • setAlpha(int a):设置画笔透明度
  • setTextSize(float textSize):设置字体大小
  • setUnderlineText(boolean underlineText):设置文本带有下划线效果
  • setStrikeThruText(boolean strikeThruText):设置文本带删除线效果
  • setTextSkewX(float skewX):设置文本倾斜度
  • setTextScaleX(float scaleX):设置文本缩放大小
  • setTextAlign(Paint.Align align):设置文本对齐方式
  • setTypeface(Typeface typeface):设置字体
  • setStyle(Paint.Style style):设置画笔样式,画笔样式有三种
    • Paint.Style.FILL:默认值,用这种风格绘制的几何图与文本将被填充,它画出来的是实心图
    • Paint.Style.STROKE:用这种风格绘制的几何图与文本将被画出外边框,它画出来的是空心图
    • Paint.Style.FILL_AND_STROKE:用这种风格绘制的几何图与文本将被填充并被画出外边框,从表面看它画出来的也是实心图,不过比一般画出来的实心图多了一层外边框
  • setStrokeWidth(float width):设置画笔外边框的宽度,可以想象成画笔“画出线条的宽度”
  • setXfermode(Xfermode xfermode):设置图像重叠时的处理方式
  • setShader(Shader shader):设置着色器
  • setPathEffect(PathEffect effect):设置或者清除路径效果

3. Canvas


Canvas拥有“绘制”调用,可以调用方法进行图像绘制。
画图时需要四个基本元素:

  • 拥有像素的Bitmap
  • 可以进行绘制调用的Canvas
  • 图元(比如:Rect, Path, text, Bitmap)
  • 描述风格与颜色的Paint

1. 新建一个Canvas对象


Canvas有两个构造方法,我们可以通过这两个构造方法创建Canvas对象:

  • Canvas():创建一个空的Canvas对象
  • Canvas(Bitmap bitmap):用指定的位图构造一个Canvas对象

2. 常用方法


  • drawARGB():用指定ARGB颜色填充画布上面的位图
  • drawRGB():用指定RGB颜色填充画布上面的位图
  • drawColor():用指定颜色填充画布上面的位图
  • drawArc():画圆弧
  • drawBitmap():画位图
  • drawCircle():画圆
  • drawLine():画直线
  • drawLines():画折线
  • drawOval():画椭圆
  • drawRect():画矩形
  • drawRoundRect():画圆角矩形
  • drawPoint():画点
  • drawPoints():画一组点
  • drawPath():画路径
  • drawText():画文本

推荐阅读更多精彩内容