博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
图片的颜色变化
阅读量:2395 次
发布时间:2019-05-10

本文共 1690 字,大约阅读时间需要 5 分钟。

package com.itheima.copybitmap;import android.app.Activity;import android.graphics.Bitmap;import android.graphics.Bitmap.Config;import android.graphics.BitmapFactory;import android.graphics.Canvas;import android.graphics.Color;import android.graphics.ColorMatrix;import android.graphics.ColorMatrixColorFilter;import android.graphics.Matrix;import android.graphics.Paint;import android.os.Bundle;import android.view.View;import android.widget.ImageView;public class MainActivity extends Activity {	private ImageView iv1,iv2;	private Bitmap alterBitmap;	private Bitmap srcBmp;	@Override	protected void onCreate(Bundle savedInstanceState) {		super.onCreate(savedInstanceState);		setContentView(R.layout.activity_main);		iv1 = (ImageView) findViewById(R.id.iv1);		iv2 = (ImageView) findViewById(R.id.iv2);		//给第一个imageview默认设置一个位图		srcBmp = BitmapFactory.decodeResource(getResources(), R.drawable.ic_launcher);		iv1.setImageBitmap(srcBmp);		//创建原图的一个副本。 可修改  创建的是一个空白的图形。		alterBitmap = Bitmap.createBitmap(srcBmp.getWidth()*2, srcBmp.getHeight()*2,srcBmp.getConfig());	}	/**	 * 创建原图 bm的一个拷贝。副本	 * @param view	 */	public void click(View view){		//1.准备一个画板  在上面放上准备好的 空白的位图		Canvas canvas = new Canvas(alterBitmap);		//2.准备一个画笔		Paint paint = new Paint();		paint.setColor(Color.BLACK);		//3.画画		Matrix m = new Matrix();				//ColorMatrix是颜色矩阵		ColorMatrix cm = new ColorMatrix();		cm.set(new float[] {		0.5f, 0, 0, 0, 0,		0, 0.8f, 0, 0, 0,		0, 0, 0.6f, 0, 0,		0, 0, 0, 1, 0		});		paint.setColorFilter(new ColorMatrixColorFilter(cm));				//这行代码要在颜色矩阵后面才有效		canvas.drawBitmap(srcBmp, m, paint);				iv2.setImageBitmap(alterBitmap);//把原图的副本设置到界面上。	}}

转载于:https://my.oschina.net/u/2356176/blog/420818

你可能感兴趣的文章
HOWTO: Unpack, Edit, and Re-Pack Boot Images
查看>>
ramfs, rootfs & initramfs
查看>>
Tom's attempts to get GPRS working over bluetooth with his laptop
查看>>
Connecting to GPRS over Bluetooth on Linux
查看>>
Linux网络资源
查看>>
Android对Kernel的改动汇总
查看>>
WGET 通过代理下载
查看>>
JITTER BUFFER
查看>>
IP协议报头学习笔记
查看>>
关于SIGPIPE导致的程序退出
查看>>
基于MTD的NAND驱动开发
查看>>
linux mtd源码分析(好东西)
查看>>
关于SIGBUS的总结
查看>>
JSP--9大隐式对象
查看>>
Servelt中主要对象的使用
查看>>
EL表达式的深刻认识
查看>>
JSP技术的学习总结
查看>>
JavaBean的初步认知
查看>>
重识java反射
查看>>
Spring的核心中IOC、DI
查看>>