Как получить три составляющие цвета пиксела ?
Получаю цвет пиксела допустим при помощи TColor __fastcall GetPixel(int X, int Y); или в билдере Bitmap->Canvas->Pixels(X, Y) вобщем возвращается значение целым числом, как получить три составляющие R G B и присвоить значение от каждой составляющей отдельной переменной в диапазоне от 0 до 255 ?
Код:
unsigned int ARGB=Bitmap->Canvas->Pixels(X, Y);
unsigned char A,R,G,B;
B=ARGB&0xFF;
ARGB>>8;
G=ARGB&0xFF;
ARGB>>8;
R=ARGB&0xFF;
ARGB>>8;
A=ARGB&0xFF;
unsigned char A,R,G,B;
B=ARGB&0xFF;
ARGB>>8;
G=ARGB&0xFF;
ARGB>>8;
R=ARGB&0xFF;
ARGB>>8;
A=ARGB&0xFF;
инт = 4 байта -> альфа-канал , красный , зеленый , синий . альфа-канал используется в RGBA
DWORD lRGBColor;
WORD R,G,B;
lRGBColor = Image2->Canvas->Pixels[X][Y];
R = GetRValue(lRGBColor);
G = GetGValue(lRGBColor);
B = GetBValue(lRGBColor);