Форум: "Media";
Текущий архив: 2004.06.20;
Скачать: [xml.tar.bz2];
ВнизКак цвет #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 вся ветка
Форум: "Media";
Текущий архив: 2004.06.20;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.035 c