Android自定义View系列
- Android自定义View注意事项
- Android自定义View之Paint绘制文字和线
- Android自定义View之Canvas
- Android自定义View之轻松实现圆角和圆形图片
- Android自定义View之双缓冲机制和SurfaceView
- Android自定义View之Window、ViewRootImpl和View的三大流程
- Android自定义View之事件分发机制总结
- Android自定义View之requestLayout方法和invalidate方法
Paint和Canvas为我们提供了丰富的API,使我们可以轻松的自己画一些图。除了可以绘制文字和简单的图形,Paint和Canvas还有一些高级的功能,比如改变图片的颜色和形状等。今天我们就来看看怎么利用Paint和Canvas改变图片的颜色。
改变图片的颜色
我们需要用到Paint和Canvas的新的API
- Paint设置颜色过滤
paint.setColorFilter(new ColorMatrixColorFilter(ColorMatrix matrix)
- Canvas绘制Bitmap
canvas.drawBitmap(@NonNull Bitmap bitmap, float left, float top, @Nullable Paint paint)
这里出现了一个新东西:ColorMatrix
ColorMatrix
ColorMatrix改变颜色的原理
- ColorMatrix:即色彩矩阵,是android.graphics包下的一个类,用来处理图片的色彩。
- 它是一个4*5的数字矩阵,用一个一维数组来保存存储矩阵中的值。
- 对于每一个像素点都有一个颜色分量矩阵用来保存颜色的RGBA值
颜色矩阵
A=⎡⎣⎢⎢⎢⎢afkpbglqchm<

本文介绍了如何在Android自定义View中改变图片颜色,主要讲解了ColorMatrix的工作原理和常用API,包括设置色调、饱和度和亮度。并提供了实战示例,如实现灰度图片的转换。文章还探讨了其他特殊颜色效果的处理方法。
最低0.47元/天 解锁文章
1642

被折叠的 条评论
为什么被折叠?



