我有在我的应用程序中显示的图像。它们是从网上下载的。这些图像是几乎白色背景上的物体图片。我希望这个背景是白色的(#FFFFFF)。我想,如果我查看像素 0,0(应该始终为灰白色),我可以获得颜色值并将图像中具有该值的每个像素替换为白色。
之前有人问过这个问题,答案似乎是这样的:
int intOldColor = bmpOldBitmap.getPixel(0,0);
Bitmap bmpNewBitmap = Bitmap.createBitmap(bmpOldBitmap.getWidth(), bmpOldBitmap.getHeight(), Bitmap.Config.RGB_565);
Canvas c = new Canvas(bmpNewBitmap);
Paint paint = new Paint();
ColorFilter filter = new LightingColorFilter(intOldColor, Color.WHITE);
paint.setColorFilter(filter);
c.drawBitmap(bmpOriginal, 0, 0, paint);
但是,这是行不通的。
运行此代码后,整个图像似乎是我想要删除的颜色。如在,整个图像现在是 1 纯色。
我还希望不必遍历整个图像中的每个像素。
有任何想法吗?