2014-02-14 5 views
1

У меня есть значения RGB с помощью этого:Построить пиксель RGB значения

int pixel = image[x][y]; 

red = ((pixel & 0xff0000) >> 16); 
green = ((pixel & 0x00ff00) >> 8); 
blue = (pixel & 0x0000ff); 

Тогда я модифицируют красный, зеленый и синий.

Как создать новый пиксель с новыми значениями?

+0

Чтобы восстановить значение пикселя, просто выполните противоположное. Что вы пробовали до сих пор, что не работает? –

ответ

3

Вы хотите, чтобы red, green, blue все в пределах 0..255. Затем вы получите их вместе:

int newPixel = 
    ((int) max(0, min(red, 0xFF)) << 16) | 
    ((int) max(0, min(green, 0xFF)) << 8) | 
    max(0, min(blue, 0xFF)); 
Смежные вопросы