关于android系统图像特效处理之底片效果

来源:互联网 发布:windows强力卸载软件 编辑:程序博客网 时间:2024/04/30 03:42

本人做了一个图片浏览器,用了一些图像处理的算法,这个是一部分,APK安装包地址:http://static.apk.hiapk.com/html/2012/08/797656.html,欢迎下载和反馈;

关于android系统图像特效处理之底片效果

 public  static Bitmap film(SoftReference<Bitmap> bmp)       {           // RGBA的最大值           final int MAX_VALUE = 255;           final int width = bmp.get().getWidth();          final int height = bmp.get().getHeight();          Bitmap bitmap = Bitmap.createBitmap(width, height, Bitmap.Config.RGB_565);                      int pixR = 0;           int pixG = 0;           int pixB = 0;                      int pixColor = 0;                      int newR = 0;           int newG = 0;           int newB = 0;                      int[] pixels = new int[width * height];           bmp.get().getPixels(pixels, 0, width, 0, 0, width, height);           int pos = 0;   //        bmp.recycle();//        bmp = null;        for (int i = 1, length = height - 1; i < length; i++)           {               for (int k = 1, len = width - 1; k < len; k++)               {                   pos = i * width + k;                   pixColor = pixels[pos];                                      pixR = Color.red(pixColor);                   pixG = Color.green(pixColor);                   pixB = Color.blue(pixColor);                                      newR = MAX_VALUE - pixR;                   newG = MAX_VALUE - pixG;                   newB = MAX_VALUE - pixB;                                      newR = Math.min(MAX_VALUE, Math.max(0, newR));                   newG = Math.min(MAX_VALUE, Math.max(0, newG));                   newB = Math.min(MAX_VALUE, Math.max(0, newB));                                      pixels[pos] = Color.argb(MAX_VALUE, newR, newG, newB);               }           }                      bitmap.setPixels(pixels, 0, width, 0, 0, width, height);           return bitmap;       } 


 

 

原创粉丝点击