다음은 픽셀을 읽어서 컬러를 변경하는 예제입니다 (참고해보세요)
private void sharpen(Bitmap src, int bitOffset) {
// get image size
int width = src.getWidth();
int height = src.getHeight();
// create output bitmap
Bitmap bmOut = Bitmap.createBitmap(width, height, src.getConfig());
// color information
int A, R, G, B;
int pixel;
// scan through all pixels
for(int x = 0; x < width; ++x) {
for(int y = 0; y < height; ++y) {
// get pixel color
pixel = src.getPixel(x, y);
A = Color.alpha(pixel);
R = Color.red(pixel);
G = Color.green(pixel);
B = Color.blue(pixel);
// round-off color offset
R = ((R + (bitOffset / 2)) - ((R + (bitOffset / 2)) % bitOffset) - 1);
if(R < 0) { R = 0; }
G = ((G + (bitOffset / 2)) - ((G + (bitOffset / 2)) % bitOffset) - 1);
if(G < 0) { G = 0; }
B = ((B + (bitOffset / 2)) - ((B + (bitOffset / 2)) % bitOffset) - 1);
if(B < 0) { B = 0; }
// set pixel color to output bitmap
bmOut.setPixel(x, y, Color.argb(A, R, G, B));
tempBitmap = bmOut;
mImageView.setImageBitmap(bmOut);
saveToLocal();
}
}
}
doridori2013@nate.com