android - 模糊和浮雕图像

标签 android image colors

我正在开发一个 Android 应用程序,并且我有一个从源图像加载的可绘制对象。在这张图像上我想制作图像模糊和浮雕,我已阅读 How to change colors of a Drawable in Android?

能给我一些建议吗?谢谢

编辑:我有浮雕图像,但我不能将图像变成蓝色,你能给我一些蓝色吗

最佳答案

 public Bitmap fudiao(Bitmap bmpOriginal) {
    int width, height, r,g, b, c,a, gry,c1,a1,r1,g1,b1,red,green,blue; 
    height = bmpOriginal.getHeight(); 
    width = bmpOriginal.getWidth(); 
    int depth = 30;

      Bitmap bmpSephia = Bitmap.createBitmap(width, height, Bitmap.Config.RGB_565);
        Canvas canvas = new Canvas(bmpSephia);
        Paint paint = new Paint();
      //  ColorMatrix cm = new ColorMatrix();
      //  cm.setScale(.3f, .3f, .3f, 1.0f);   
      //  ColorMatrixColorFilter f = new ColorMatrixColorFilter(cm);
      //  paint.setColorFilter(f);
       canvas.drawBitmap(bmpOriginal, 0, 0, null);
        for(int y=1; y< height-1; y++) {
            for(int x=1; x < width-1; x++) {
                c = bmpOriginal.getPixel(x, y);

                r = Color.red(c);
                g = Color.green(c);
                b = Color.blue(c);

                c1 = bmpOriginal.getPixel(x-1, y-1);

                r1 = Color.red(c1);
                g1 = Color.green(c1);
                b1 = Color.blue(c1);


                red = Math.max(67, Math.min(255, Math.abs(r - r1 + 128)));
                green = Math.max(67, Math.min(255, Math.abs(g - g1 + 128)));
                blue = Math.max(67, Math.min(255, Math.abs(b - b1 + 128))); 
                if (red > 255)
                {
                    red = 255;
                }
                else if (red < 0)
                {
                    red = 0;
                }

                if (green > 255)
                {
                    green = 255;
                }
                else if (green < 0)
                {
                    green = 0;
                }

                if (blue > 255)
                {
                    blue = 255;
                }
                else if (blue < 0)
                {
                    blue = 0;
                }

               bmpSephia.setPixel(x, y, Color.rgb(red, green, blue));
               // bmpSephia.setPixel(x, y, Color.argb(a1, red, green, blue));
            }
        }      
        return bmpSephia;
    }

这只是浮雕图片

关于android - 模糊和浮雕图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6728860/

相关文章:

android - 来自相机的实时图像偏移

python - matplotlib、pyplot : custom color for a specific data value

Python:将浮点范围[0.0,1.0]映射到颜色范围[红色,绿色]?

android - 如何在 Android 中使用 Lisp?

java - Edittext,提交时需要显示在android的另一个窗口上

android - 无法使用 Linking.openURL 打开电话

javascript - 如何在 JavaScript 中旋转图像?

html - 页眉不适用于背景图片

java - 主题、背景颜色和操作栏的交互

Android - 调用 System.loadLibrary() 导致进程终止