我已经看到Android中有EffectFactory,它支持双色调效果。但它仅适用于 API 级别 14 及更高级别。
问题是我需要应用程序从 API 级别 11 开始工作。
所以我的问题是,是否有办法在低于 API 14 的 Android 上制作 Duotone 图像效果?
使用我当前的代码,我访问每个像素,获取它的 RGB 并更改它。但我不知道双色调是如何工作的。这是我的代码:
public Bitmap doColorFilter(Bitmap src)
{
int width = src.getWidth();
int height = src.getHeight();
Bitmap bmOut = Bitmap.createBitmap(width, height, src.getConfig());
int A, R, G, B;
int pixel;
for (int x = 0; x < width; ++x)
{
for (int y = 0; y < height; ++y)
{
pixel = src.getPixel(x, y);
A = Color.alpha(pixel);
R = (int) (Color.red(pixel));
G = (int) (Color.green(pixel));
B = (int) (Color.blue(pixel));
bmOut.setPixel(x, y, Color.argb(A, R, G, B));
}
}
return bmOut;
}
编辑:
棕褐色色调不像我需要的那样工作。以下是三张图片:
1. 原图。
2. 一个带有修改过的棕褐色调效果 Der Golem 链接
3. 我需要一个带有双色调效果的: