Android动态修改图片颜色的实现方式分析
来源:互联网 发布:适合程序员用的笔记本 编辑:程序博客网 时间:2024/06/06 05:17
1.修改色相、饱和度、亮度
参看:http://blog.csdn.net/sjf0115/article/details/7267063
2.使用透明度通道,获取图片轮廓
参看:http://blog.csdn.net/liu2604592/article/details/7759168
方法:
//提取图像Alpha位图 public static Bitmap getAlphaBitmap(Bitmap mBitmap,int mColor) {// BitmapDrawable mBitmapDrawable = (BitmapDrawable) mContext.getResources().getDrawable(R.drawable.enemy_infantry_ninja);// Bitmap mBitmap = mBitmapDrawable.getBitmap(); //BitmapDrawable的getIntrinsicWidth()方法,Bitmap的getWidth()方法 //注意这两个方法的区别 //Bitmap mAlphaBitmap = Bitmap.createBitmap(mBitmapDrawable.getIntrinsicWidth(), mBitmapDrawable.getIntrinsicHeight(), Config.ARGB_8888); Bitmap mAlphaBitmap = Bitmap.createBitmap(mBitmap.getWidth(), mBitmap.getHeight(), Config.ARGB_8888); Canvas mCanvas = new Canvas(mAlphaBitmap); Paint mPaint = new Paint(); mPaint.setColor(mColor); //从原位图中提取只包含alpha的位图 Bitmap alphaBitmap = mBitmap.extractAlpha(); //在画布上(mAlphaBitmap)绘制alpha位图 mCanvas.drawBitmap(alphaBitmap, 0, 0, mPaint); return mAlphaBitmap; }
deviceIV.setDrawingCacheEnabled(true);
deviceBmp = deviceIV.getDrawingCache();
时常会出现null,原因是超出系统提供最大的DrawingCache值,所以要在此代码前添加如下代码:
deviceIV.measure(MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED), MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED));
deviceIV.layout(0, 0, deviceIV.getMeasuredWidth(), deviceIV.getMeasuredHeight());
3.修改图片像素点的色值,动态修改图片
参看:http://blog.csdn.net/xys289187120/article/details/6580777
- Android动态修改图片颜色的实现方式分析
- Android动态修改图片颜色的实现方式分析
- android 修改图片的颜色
- Android动态修改状态栏沉浸色(取图片颜色)
- android 动态改变图片颜色
- 在代码中,动态修改图片颜色
- 动态修改背景图片的颜色
- 动态修改NavigationBar的颜色
- 动态修改NavigationBar的颜色
- android 之修改图片的某一颜色值
- Android 修改Bitmap图片像素的信息 RGB颜色值
- 修改textview 的图片颜色
- Photoshop实现修改gif格式动态图片,如切换背景颜色等.....
- Android之动态修改system/etc目录下文件的一种实现方式-SELinux
- Android实现修改状态栏颜色
- 使用透明度获取图片轮廓动态修改图片颜色
- android 动态修改EditText光标颜色
- 动态修改shape颜色值 android开发
- MFC学习笔记
- Java虚拟机深入研究
- YII url美化管理
- 设计模式之模板方法
- PHP 杂谈《重构-改善既有代码的设计》之四 简化条件表达式
- Android动态修改图片颜色的实现方式分析
- 解析 Linux 中的 VFS 文件系统机制
- 一对一 ‘单’ ‘双’ 向关系
- 异常处理机制
- 图像缩放算法及速度优化——(一)最近邻插值
- 结构体成员之位域的使用
- Android中Service类onStartCommand的返回值问题
- JDBC数据批处理demo
- 构建通用还是专一型系统