Вниз
Скачать: CL | DM;

Как цвет #FFFFFF перевести в RGB?   Найти похожие ветки 

← →
kas-t   (2004-04-06 08:41) [0]

Здравствуйте! Подскажите какими методами можно перевести цвет #FFFFFF в RGB... то есть разбить по цветам? Зарание огромное спасибо...


← →
Anatoly Podgoretsky ©   (2004-04-06 08:51) [1]

Он уже RGB


← →
Mihey ©   (2004-04-06 20:38) [2]

RedValue := GetRValue(C: TColor);
GreenValue := GetGValue(C: TColor);
BlueValue := GetBValue(C: TColor);


← →
Stexen ©   (2004-04-07 20:46) [3]

НУ по-теории оно же трехбайтное должно быть соответсвенно красный первый байт второй зеленый и третий синий


← →
AxxxE ©   (2004-04-07 20:54) [4]

// Процедура для конвертации из TColor в RGB
procedure GetRGBValue(const Color: TColor; var Red, Green, Blue: Byte);
begin
 red := Color and $FF;
 Green := (Color shr 8) and $FF;
 Blue := (Color shr 16) and $FF;
end;

// Функция RGB ---> TColor
function SetRGBValue(Red, Green, Blue: Byte): TColor;
begin
 Result := $00;
 Result := (Result shl 8) or Blue;
 Result := (Result shl 8) or Green;
 Result := (Result shl 8) or Red;
end;

Взято из примера с DelphiGFX. Ну если просто так дойти не может, ужель нельзя на этом сайте посмотреть?


← →
kas-t   (2004-04-07 21:16) [5]

Да это все понятно. Может быть конечно я не правильно выразился но нужно именно из строки "#CCCCCC" или "#FCFCFC" получить именно цвет в RGB? То есть у меня такая строка #FF0000, а нужно что бы было 255.0.0 А с переводом TColor в RGB проблем нет :)...


← →
Алхимик ©   (2004-04-07 21:19) [6]

Hex в Dec перевести не могём?


← →
Mihey ©   (2004-04-07 22:40) [7]

unction ColorToHex(Color: TColor): String;
var
 R, G, B: Byte;
begin
 Color := ColorToRGB(Color);
 R := GetRValue(Color);
 G := GetGValue(Color);
 B := GetBValue(Color);
 ColorToHex := IntToHex(R,2) + IntToHex(G,2) + IntToHex(B,2);
end;

function HexToColor(Color: String): TColor;
var
 R, G, B: Byte;
begin
 R := StrToInt("$" + Copy(Color, 1, 2));
 G := StrToInt("$" + Copy(Color, 3, 2));
 B := StrToInt("$" + Copy(Color, 5, 2));
 Result := RGB(r, g, b);
end;


← →
Anatoly Podgoretsky ©   (2004-04-07 23:09) [8]

kas-t   (07.04.04 21:16) [5]
Это шестнадцатиричное представление RGB, где # является признаком и далее слева направа шестнадцатиричные коды RGB
Преобразование делвется с помощью функции StrToInt("$" + два символа из строки) три раза делаешь по два символа


← →
Anatoly Podgoretsky ©   (2004-04-07 23:12) [9]

Если у тебя Д6, то обрати внимание на тип LongRec/Bytes


← →
kas-t   (2004-04-08 08:18) [10]

Спасибо разобрался...



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.035 c
11-1074520305
avakss
2004-01-19 16:51
2004.06.20
statusctl


1-1086355611
Form
2004-06-04 17:26
2004.06.20
Как правильно удостовериться, что форма убита?


14-1085977349
Паниковский
2004-05-31 08:22
2004.06.20
Танцы с бубном: мифы и реальность


4-1084621171
Mameluke
2004-05-15 15:39
2004.06.20
Help по WinAPI Delphi


1-1086255561
DIS
2004-06-03 13:39
2004.06.20
Перевод символа в верхний регистр




   Наверх