[关闭]
@kimo 2016-01-05T12:14:27.000000Z 字数 1247 阅读 1403

图像处理

android


ColorMatrix cm = new ColorMatrix();

色调
cm.setRotate(0,hue);//R
cm.setRotate(1,hue);//G
cm.setRotate(2,hue);//B

饱和度
cm.setSaturation(saturation);

亮度
cm.setScale(lum,lum,lum,1);

example

  1. import android.graphics.Bitmap;
  2. import android.graphics.Canvas;
  3. import android.graphics.ColorMatrix;
  4. import android.graphics.ColorMatrixColorFilter;
  5. import android.graphics.Paint;
  6. /**
  7. * Created by Administrator on 2016/1/5 0005.
  8. */
  9. public class ImageUtils {
  10. public static Bitmap handleImageEffect(Bitmap bitmap,int hue,int saturation,int lum){
  11. Bitmap bitmap1 = Bitmap.createBitmap(bitmap.getWidth(),bitmap.getHeight(),Bitmap.Config.ARGB_8888);
  12. Canvas canvas = new Canvas(bitmap1);
  13. Paint paint = new Paint(Paint.ANTI_ALIAS_FLAG);//抗锯齿
  14. ColorMatrix colorMatrix = new ColorMatrix();
  15. colorMatrix.setRotate(0,hue);//色调
  16. colorMatrix.setRotate(1,hue);
  17. colorMatrix.setRotate(2,hue);
  18. ColorMatrix colorMatrix1 = new ColorMatrix();
  19. colorMatrix1.setSaturation(saturation);//饱和度
  20. ColorMatrix colorMatrix2 = new ColorMatrix();
  21. colorMatrix2.setScale(lum,lum,lum,1);//亮度
  22. ColorMatrix imageMatrix = new ColorMatrix();
  23. imageMatrix.postConcat(colorMatrix);//融合
  24. imageMatrix.postConcat(colorMatrix1);
  25. imageMatrix.postConcat(colorMatrix2);
  26. paint.setColorFilter(new ColorMatrixColorFilter(imageMatrix));//给笔加上特效
  27. canvas.drawBitmap(bitmap,0,0,paint);//蒙色
  28. return bitmap1 ;
  29. }
  30. }
添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注