Android学习之Paint图形图像处理(一)

是什么

Paint,顾名思义,就是画,作动词画画,引申为画笔,所以paint就相当于我们平常使用的画笔,而对paint的一些setXXX操作就是日常对画笔粗细,颜色等的操作,但是程序中的paint可能会比生活中的更强大些。

怎么样

API文档解释:

The Paint class holds the style and color information about how to draw geometries, text and bitmaps.

从Api定义可知,画笔持有样式和颜色信息,关于怎么样的信息呢,关于如何绘制几何图形,文本和位图的样式和颜色信息。

大体分为两类,图形绘制和文本绘制。

怎么用

从构造方法开始看

paint 构造方法

有图可知,Paint有三个构造方法,

  • 第一个是无参数构造方法,也是默认构造方法,携带默认设置,比如默认黑色,无坑锯齿,不加粗等。
  • 第二个是带flags参数的构造方法,将光标移到这个构造方法上,会对flags做这样的解释
    这里写图片描述

初看以为是flags的枚举,于是在使用时这样
这里写图片描述

发现没有,原来重点在前一句set the paint's flags 设置paint的flags,当然是用Paint去获得flags呀~
这里写图片描述

对着api文档,一一解释这里的枚举类型是什么作用,也可以直接查看API文档

截了一张图,更直观
这里写图片描述
分别表示:
- 可抗锯齿
- 可设置字间距
- 可抖动
- 可设定标记
- 可过滤位图
- 设置暗示模式为HINTING_OFF,不可暗示
- 设置暗示模式为HINTING_OFF,可暗示
- 设置为线性文本
- 设置为删除线效果文本
- 设置为可亚像素文本
- 设置为下划线效果文本

当在构造方法中设置了这些值,就不用通过paint对象去设置了,但我个人认为,通过对象去设置更为方便

  • 第三个是设置Paint参数的构造方法,初始化paint的属性,感觉和第二个构造方法很相似,不知道有啥区别,而且paint都有那么多setXXX方法了为什么还要加这两个个构造方法呢,直接对默认的对象进行设置不行么?这是我的疑问,可能很无知,但我确实不知道,如果有幸被哪位知道的人看到了,麻烦告诉我一声,谢谢~

从API开始看

图形绘制

// 参数1,透明度,参数2:红,参数3:绿,参数4:蓝 均为int 类型,取值范围0~255,不是小数
setARGB(int a,int r,int g,int b);
//设置透明度,参数同上参数1,取值范围相同
setAlpha(int a);
//设置颜色,使用颜色值来表示,该颜色值包括透明度和RGB颜色
setColor(int color);
//设置是否坑锯齿,会消耗大量资源,绘图速度变慢[这个属性要实际理解,在后面借用别人的一张图]
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值