在Android中获取像素颜色

时间:2016-08-27 09:00:59

标签: android

如何以固定像素获取颜色:

这是我的代码

public static void getColor(Bitmap btm,Activity act){
    int w = 300;
    int h = 500;
    btm=Bitmap.createScaledBitmap(btm, w,h, true);

    color1= btm.getPixel(30, 50);
    color2= btm.getPixel(50, 70);

}

2 个答案:

答案 0 :(得分:3)

试试这个。我用它来获得图像的主要颜色。

public static int getDominantColor(Bitmap bitmap) {
    Bitmap newBitmap = Bitmap.createScaledBitmap(bitmap, 1, 1, true);
    final int color = newBitmap.getPixel(0, 0);
    newBitmap.recycle();
    return color;
}

答案 1 :(得分:0)

问题不在于您共享的方法,它是您生成位图并将其传递给在不同设备上具有不同大小的此功能的方式。

仅仅因为您将设备缩放到一定的尺寸并不意味着所有像素对于不同的屏幕尺寸都具有相同的颜色。通过从位图读取颜色无法解决此问题,因此您必须解释实际目的,因此我们可以使用不同的技术解决它。