названия цветов
От: stdtan  
Дата: 25.04.04 20:50
Оценка:
в наличии код цвета в формате COLORREF. Необходимо получить название этого цвета
ума не приложу как это сделать
Есть ли стандартные наименования цветов и как их получить? Или необходимо задавать название "в ручную"?
Re: названия цветов
От: c-smile Канада http://terrainformatica.com
Дата: 25.04.04 20:57
Оценка: 27 (1)
Здравствуйте, stdtan, Вы писали:

S>в наличии код цвета в формате COLORREF. Необходимо получить название этого цвета

S>ума не приложу как это сделать
S>Есть ли стандартные наименования цветов и как их получить? Или необходимо задавать название "в ручную"?

Не знаю что есть такое "стандартные наименования цветов".

А для HTML стандартом определены такие вот цвета:

struct color_def { const char *name; int color; } color_table[] = 
{
{"aliceblue",0xfff8f0},
{"antiquewhite",0xd7ebfa},
{"aqua",0xffff00},
{"aquamarine",0xd4ff7f},
{"azure",0xfffff0},
{"beige",0xdcf5f5},
{"bisque",0xc4e4ff},
{"black",0x000000},
{"blanchedalmond",0xcdebff},
{"blue",0xff0000},
{"blueviolet",0xe22b8a},
{"brown",0x2a2aa5},
{"burlywood",0x87b8de},
{"cadetblue",0xa09e5f},
{"chartreuse",0x00ff7f},
{"chocolate",0x1e69d2},
{"coral",0x507fff},
{"cornflowerblue",0xed9564},
{"cornsilk",0xdcf8ff},
{"crimson",0x3c14dc},
{"cyan",0xffff00},
{"darkblue",0x8b0000},
{"darkcyan",0x8b8b00},
{"darkgoldenrod",0x0b86b8},
{"darkgray",0xa9a9a9},
{"darkgreen",0x006400},
{"darkkhaki",0x6bb7bd},
{"darkmagenta",0x8b008b},
{"darkolivegreen",0x2f6b55},
{"darkorange",0x008cff},
{"darkorchid",0xcc3299},
{"darkred",0x00008b},
{"darksalmon",0x7a96e9},
{"darkseagreen",0x8fbc8f},
{"darkslateblue",0x8b3d48},
{"darkslategray",0x4f4f2f},
{"darkturquoise",0xd1ce00},
{"darkviolet",0xd30094},
{"deeppink",0x9314ff},
{"deepskyblue",0xffbf00},
{"dimgray",0x696969},
{"dodgerblue",0xff901e},
{"feldspar",0x7592d1},
{"firebrick",0x2222b2},
{"floralwhite",0xf0faff},
{"forestgreen",0x228b22},
{"fuchsia",0xff00ff},
{"gainsboro",0xdcdcdc},
{"ghostwhite",0xfff8f8},
{"gold",0x00d7ff},
{"goldenrod",0x20a5da},
{"gray",0x808080},
{"green",0x008000},
{"greenyellow",0x2fffad},
{"honeydew",0xf0fff0},
{"hotpink",0xb469ff},
{"indianred ",0x5c5ccd},
{"indigo ",0x82004b},
{"ivory",0xf0ffff},
{"khaki",0x8ce6f0},
{"lavender",0xfae6e6},
{"lavenderblush",0xf5f0ff},
{"lawngreen",0x00fc7c},
{"lemonchiffon",0xcdfaff},
{"lightblue",0xe6d8ad},
{"lightcoral",0x8080f0},
{"lightcyan",0xffffe0},
{"lightgoldenrodyellow",0xd2fafa},
{"lightgrey",0xd3d3d3},
{"lightgreen",0x90ee90},
{"lightpink",0xc1b6ff},
{"lightsalmon",0x7aa0ff},
{"lightseagreen",0xaab220},
{"lightskyblue",0xface87},
{"lightslateblue",0xff7084},
{"lightslategray",0x998877},
{"lightsteelblue",0xdec4b0},
{"lightyellow",0xe0ffff},
{"lime",0x00ff00},
{"limegreen",0x32cd32},
{"linen",0xe6f0fa},
{"magenta",0xff00ff},
{"maroon",0x000080},
{"mediumaquamarine",0xaacd66},
{"mediumblue",0xcd0000},
{"mediumorchid",0xd355ba},
{"mediumpurple",0xd87093},
{"mediumseagreen",0x71b33c},
{"mediumslateblue",0xee687b},
{"mediumspringgreen",0x9afa00},
{"mediumturquoise",0xccd148},
{"mediumvioletred",0x8515c7},
{"midnightblue",0x701919},
{"mintcream",0xfafff5},
{"mistyrose",0xe1e4ff},
{"moccasin",0xb5e4ff},
{"navajowhite",0xaddeff},
{"navy",0x800000},
{"oldlace",0xe6f5fd},
{"olive",0x008080},
{"olivedrab",0x238e6b},
{"orange",0x00a5ff},
{"orangered",0x0045ff},
{"orchid",0xd670da},
{"palegoldenrod",0xaae8ee},
{"palegreen",0x98fb98},
{"paleturquoise",0xeeeeaf},
{"palevioletred",0x9370d8},
{"papayawhip",0xd5efff},
{"peachpuff",0xb9daff},
{"peru",0x3f85cd},
{"pink",0xcbc0ff},
{"plum",0xdda0dd},
{"powderblue",0xe6e0b0},
{"purple",0x800080},
{"red",0x0000ff},
{"rosybrown",0x8f8fbc},
{"royalblue",0xe16941},
{"saddlebrown",0x13458b},
{"salmon",0x7280fa},
{"sandybrown",0x60a4f4},
{"seagreen",0x578b2e},
{"seashell",0xeef5ff},
{"sienna",0x2d52a0},
{"silver",0xc0c0c0},
{"skyblue",0xebce87},
{"slateblue",0xcd5a6a},
{"slategray",0x908070},
{"snow",0xfafaff},
{"springgreen",0x7fff00},
{"steelblue",0xb48246},
{"tan",0x8cb4d2},
{"teal",0x808000},
{"thistle",0xd8bfd8},
{"tomato",0x4763ff},
{"turquoise",0xd0e040},
{"violet",0xee82ee},
{"violetred",0x9020d0},
{"wheat",0xb3def5},
{"white",0xffffff},
{"whitesmoke",0xf5f5f5},
{"yellow",0x00ffff},
{"yellowgreen",0x32cd9a}
};
Re[2]: названия цветов
От: stdtan  
Дата: 25.04.04 21:21
Оценка:
спасибо за структуру
но она же не принадлежит стандартной библиотеке
хотелось все же узнать: нет ли определений цветов в стандартной библиотеке
например функция типа GetNameColor(COLORREF )...
Re: названия цветов
От: Andrew S Россия http://alchemy-lab.com
Дата: 25.04.04 22:50
Оценка:
S>в наличии код цвета в формате COLORREF. Необходимо получить название этого цвета
S>ума не приложу как это сделать
S>Есть ли стандартные наименования цветов и как их получить? Или необходимо задавать название "в ручную"?

Названия есть, получить их в строковом виде нельзя. Точнее, я не помню такой возможности
А в чем проблемы написать функцию то?
Получаем стандартные цвета в массив при помощи GetSysColor (наверное, лучше в ассоциативный), собственно, и все
http://www.rusyaz.ru/pr — стараемся писАть по-русски
Re[2]: названия цветов
От: adontz Грузия http://adontz.wordpress.com/
Дата: 25.04.04 23:46
Оценка:
Здравствуйте, Andrew S, Вы писали:

AS>А в чем проблемы написать функцию то?

Проблема модет быть в локализации
Кстати у CorelDraw, например, есть своя RGB и CMYK палитры и они различаются набором цветов, так что тут ещё большой вопрос для чего нужны эти названия.
A journey of a thousand miles must begin with a single step © Lau Tsu
Re[3]: названия цветов
От: Tuo_Bellas Россия  
Дата: 26.04.04 00:03
Оценка:
Здравствуйте, stdtan, Вы писали:

S>спасибо за структуру

S>но она же не принадлежит стандартной библиотеке
S>хотелось все же узнать: нет ли определений цветов в стандартной библиотеке
S>например функция типа GetNameColor(COLORREF )...

Смотря что называть "стандартной библиотекой" В STL точно нет. В WinAPI -- скорее всего тоже.

Если мне память не изменяет, то у HTML-цветов и их названий ноги растут из X-Window. Там, кажется стандартный файлик был с этими цветами и их значениями.

Как и следовало ожидать, все кому не лень изобретают собственную систему названий цветов. Поискав в гугле standard color list, нашел "Mother of all HTML color tables". Цветов -- дофига.

HTH,
Tuo_Bellas.
Re[4]: названия цветов
От: Tuo_Bellas Россия  
Дата: 26.04.04 00:41
Оценка:
T_B>Как и следовало ожидать, все кому не лень изобретают собственную систему названий цветов. Поискав в гугле standard color list, нашел [url=http://tx4.us/moacolor.htm
T_B>]"Mother of all HTML color tables"[/url]. Цветов -- дофига.

Дизайн, правда, отвратительный... Но это ничего, издержки...

А если понадобтится локализация на русский -- можешь воспользоваться таблицами "стандартных цветов печати по сосиске" и по колбасе.

HTH,
Tuo_Bellas.
Re[2]: названия цветов
От: Братец Кролик Россия  
Дата: 26.04.04 02:35
Оценка:
Здравствуйте, c-smile, Вы писали:

CS>Здравствуйте, stdtan, Вы писали:


S>>в наличии код цвета в формате COLORREF. Необходимо получить название этого цвета

S>>ума не приложу как это сделать
S>>Есть ли стандартные наименования цветов и как их получить? Или необходимо задавать название "в ручную"?

CS>Не знаю что есть такое "стандартные наименования цветов".


CS>А для HTML стандартом определены такие вот цвета:


Во-первых, причем тут HTML? Во-вторых в HTML формат цветов не COLORREF. В-третьих, это каким таким стандартом цвета для HTML определены подобным образом?


Для справки:

The format of an RGB value in hexadecimal notation is a '#' immediately followed by either three or six hexadecimal characters. The three-digit RGB notation (#rgb) is converted into six-digit form (#rrggbb) by replicating digits, not by adding zeros. For example, #fb0 expands to #ffbb00. This ensures that white (#ffffff) can be specified with the short notation (#fff) and removes any dependencies on the color depth of the display.

http://www.w3.org/TR/css3-color/
Это правда из стандарта по CSS, но он в свою очередь ссылается на HTML и sRGB
Re[3]: названия цветов
От: Andrew S Россия http://alchemy-lab.com
Дата: 26.04.04 06:25
Оценка:
AS>>А в чем проблемы написать функцию то?
A>Проблема модет быть в локализации
Не вижу проблем.
A>Кстати у CorelDraw, например, есть своя RGB и CMYK палитры и они различаются набором цветов, так что тут ещё большой вопрос для чего нужны эти названия.
Насколько я понял, имеются ввиду названия "а-ля VCL".
CMYK — не в кассу, почитайте вопрос. Хинт — COLORREF.
http://www.rusyaz.ru/pr — стараемся писАть по-русски
Re[4]: названия цветов
От: stdtan  
Дата: 26.04.04 07:31
Оценка:
Здравствуйте, Andrew S, Вы писали:

AS>>>А в чем проблемы написать функцию то?

A>>Проблема модет быть в локализации
AS>Не вижу проблем.
A>>Кстати у CorelDraw, например, есть своя RGB и CMYK палитры и они различаются набором цветов, так что тут ещё большой вопрос для чего нужны эти названия.
AS>Насколько я понял, имеются ввиду названия "а-ля VCL".
AS>CMYK — не в кассу, почитайте вопрос. Хинт — COLORREF.

все равно не понятно
GetSysColor возвращает RGB цвета, какого-нибудб элемента
из RGB название цвета (RGB(0, 0, 0) -> "черный")
проблема в том, что при выборе квадратика цвета в ColorDialog необходимо выводить название цвета
Re[5]: названия цветов
От: Andrew S Россия http://alchemy-lab.com
Дата: 26.04.04 07:57
Оценка:
S>все равно не понятно
S>GetSysColor возвращает RGB цвета, какого-нибудб элемента
S>из RGB название цвета (RGB(0, 0, 0) -> "черный")
S>проблема в том, что при выборе квадратика цвета в ColorDialog необходимо выводить название цвета
S>

Аа, вот вы про что. Вообще то "стандартные наименования" предполагает несколько другое, впрочем... Посмотрите, как это реализовано в VCL. Реализация тривиальна, все "вручную", и никакой GetSysColor вам в этом случае не нужен — это я про другое подумал.

  clBlack = TColor($000000);
  clMaroon = TColor($000080);
  clGreen = TColor($008000);
  clOlive = TColor($008080);
  clNavy = TColor($800000);
  clPurple = TColor($800080);
  clTeal = TColor($808000);
  clGray = TColor($808080);
  clSilver = TColor($C0C0C0);
  clRed = TColor($0000FF);
  clLime = TColor($00FF00);
  clYellow = TColor($00FFFF);
  clBlue = TColor($FF0000);
  clFuchsia = TColor($FF00FF);
  clAqua = TColor($FFFF00);
  clLtGray = TColor($C0C0C0);
  clDkGray = TColor($808080);
  clWhite = TColor($FFFFFF);
  clNone = TColor($1FFFFFFF);
  clDefault = TColor($20000000);
http://www.rusyaz.ru/pr — стараемся писАть по-русски
Re[6]: названия цветов
От: stdtan  
Дата: 26.04.04 08:50
Оценка:
Здравствуйте, Andrew S, Вы писали:

AS>Аа, вот вы про что. Вообще то "стандартные наименования" предполагает несколько другое, впрочем... Посмотрите, как это реализовано в VCL. Реализация тривиальна, все "вручную", и никакой GetSysColor вам в этом случае не нужен — это я про другое подумал.


AS>
AS>  clBlack = TColor($000000);
AS>  clMaroon = TColor($000080);
AS>  clGreen = TColor($008000);
AS>  clOlive = TColor($008080);
AS>  clNavy = TColor($800000);
AS>  clPurple = TColor($800080);
AS>  clTeal = TColor($808000);
AS>  clGray = TColor($808080);
AS>  clSilver = TColor($C0C0C0);
AS>  clRed = TColor($0000FF);
AS>  clLime = TColor($00FF00);
AS>  clYellow = TColor($00FFFF);
AS>  clBlue = TColor($FF0000);
AS>  clFuchsia = TColor($FF00FF);
AS>  clAqua = TColor($FFFF00);
AS>  clLtGray = TColor($C0C0C0);
AS>  clDkGray = TColor($808080);
AS>  clWhite = TColor($FFFFFF);
AS>  clNone = TColor($1FFFFFFF);
AS>  clDefault = TColor($20000000);
AS>


ой, а как это работает?
скажите, может про это можно где-нибудь прочитать?
в MSDNе такого нету
Re[7]: названия цветов
От: Andrew S Россия http://alchemy-lab.com
Дата: 26.04.04 10:26
Оценка:
AS>>
AS>>  clBlack = TColor($000000);
AS>>  clMaroon = TColor($000080);
AS>>  clGreen = TColor($008000);
AS>>  clOlive = TColor($008080);
AS>>  clNavy = TColor($800000);
AS>>  clPurple = TColor($800080);
AS>>  clTeal = TColor($808000);
AS>>  clGray = TColor($808080);
AS>>  clSilver = TColor($C0C0C0);
AS>>  clRed = TColor($0000FF);
AS>>  clLime = TColor($00FF00);
AS>>  clYellow = TColor($00FFFF);
AS>>  clBlue = TColor($FF0000);
AS>>  clFuchsia = TColor($FF00FF);
AS>>  clAqua = TColor($FFFF00);
AS>>  clLtGray = TColor($C0C0C0);
AS>>  clDkGray = TColor($808080);
AS>>  clWhite = TColor($FFFFFF);
AS>>  clNone = TColor($1FFFFFFF);
AS>>  clDefault = TColor($20000000);
AS>>


S>ой, а как это работает?

S>скажите, может про это можно где-нибудь прочитать?
S>в MSDNе такого нету

Нету, конечно. Это же VCL. Работает это ровно так, как и должно — обычные определения констант, на основе которых потом определяется название цвета. В общем, все "ручками".
http://www.rusyaz.ru/pr — стараемся писАть по-русски
Re[8]: названия цветов
От: kiborg Россия  
Дата: 27.04.04 03:37
Оценка: 46 (4)
А вот вам ещё:

Раскладка цветовой гаммы по
RGB-составляющим
Белоснежный (Snow)
FFFAFA

Призрачно-белый (Ghostwhite)
F8F8FF

Белый-антик (Antique White)
FAEBD7

Кремовый (Cream)
FFFBF0

Персиковый (Peachpuff)
FFDAB9

Белый-навахо (Navajo White)
FFDEAD

Шелковый оттенок (Cornsilk)
FFF8DC

Слоновая кость (Ivory)
FFFFF0

Лимонный (Lemon Chiffon)
FFFACD

Морская раковина (Seashell)
FFF5EE

Медовый (Honeydew)
F0FFF0

Лазурный (Azure)
F0FFFF

Бледно-лиловый (Lavender)
E6E6FA

Голубой с красным отливом (Lavender Blush)
FFF0F5

Тускло-розовый (Misty Rose)
FFE4E1

Белый (White)
FFFFFF

Черный (Black)
000000

Тускло-серый (Dim Gray)
696969

Синевато-серый (Slate Gray)
708090

Грифельно-серый (Light Slate Gray)
778899

Серый (Gray)
BEBEBE

Светло-серый (Light Gray)
C0C0C0

Серый нейтральный (Medium Gray)
A0A0A4

Темно-серый (Dark Gray)
808080

Полуночно-синий (Midnight Blue)
191970

Темно-синий (Dark Blue)
000080

Васильковый (Cornflower)
6495ED

Грифельно-синий (Slate Blue)
6A5ACD

Светлый грифельно-синий (Light Slate Blue)
8470FF

Голубой королевский (Royal Blue)
4169E1

Синий (Blue)
0000FF

Небесно-голубой (Sky Blue)
87CEEB

Светлый небесно-голубой (Light Sky Blue)
87CEFA

Синий со стальным оттенком (Steel Blue)
4682B4

Голубой со стальным оттенком (Light Steel Blue)
B0C4DE

Светло-синий (Light Blue)
A6CAF0

Синий с пороховым оттенком (Powder Blue)
B0E0E6

Бледно-бирюзовый (Pale Turquoise)
AFEEEE

Бирюзовый (Turquoise)
40E0D0

Зеленовато-голубой (Cyan)
00FFFF

Светлый циан (Light Cyan)
E0FFFF

Темный циан (Dark Cyan)
008080

Серо-синий (Cadet Blue)
5F9EA0

Аквамарин (Aquamarine)
7FFFD4

Цвет морской волны (Seagreen)
54FF9F

Светлая морская волна (Light Seagreen)
20B2AA

Бледно-зеленый (Pale Green)
98FB98

Весенний зеленый (Spring Green)
00FF7F

Зеленая лужайка (Lawn Green)
7CFC00

Зеленый (Green)
00FF00

Нейтральный зеленый (Medium Green)
C0DCC0

Темно-зеленый (Dark Green)
008000

Зеленовато-желтый (Chartreuse)
7FFF00

Зелено-желтый (Green Yellow)
ADFF2F

Лимонно-зеленый (Lime Green)
32CD32

Желто-зеленый (Yellow Green)
9ACD32

Зеленый лесной (Forest Green)
228B22

Бледно-золотистый березовый (Pale Goldenrod)
EEE8AA

Светло-желтый золотистый (Light Goldenrod Yellow)
FAFAD2

Светло-желтый (Light Yellow)
FFFFE0

Желтый (Yellow)
FFFF00

Темно-желтый (Dark Yellow)
808000

Золотой (Gold)
FFD700

Светло-золотистый (Light Goldenrod)
FFEC8B

Золотисто-березовый (Goldenrod)
DAA520

Легкий желтый (Burly Wood)
DEB887

Розово-коричневый (Rosy Brown)
BC8F8F

Кожано-коричневый (Saddle Brown)
8B4513

Охра (Sienna)
A0522D

Бежевый (Beige)
F5F5DC

Пшеничный (Wheat)
F5DEB3

Рыжевато-коричневый (Tan)
D2B48C

Шоколадный (Chocolate)
D2691E

Кирпичный (Firebrick)
B22222

Коричневый (Brown)
A52A2A

Самон (Salmon)
FA8072

Светлый самон (Light Salmon)
FFA07A

Оранжевый (Orange)
FFA500

Коралловый (Coral)
FF7F50

Коралловый светлый (Light Coral)
F08080

Оранжево-красный (Orange Red)
FF4500

Красный (Red)
FF0000

Темно-красный (Dark Red)
800000

Теплый розовый (Hot Pink)
FF69B4

Розовый (Pink)
FFC0CB

Светло-розовый (Light Pink)
FFB6C1

Красно-фиолетовый бледный (Pale Violet Red)
DB7093

Темно-бордовый (Maroon)
B03060

Красно-фиолетовый (Violet Red)
D02090

Фуксин (Magenta)
FF00FF

Фуксин темный (Dark Magenta)
800080

Фиолетовый (Violet)
EE82EE

Темно-фиолетовый (Plum)
DDA0DD

Орсель (Orchid)
DA70D6

Фиолетово-синий (Blue Violet)
8A2BE2

Пурпурный (Purple)
A020F0
... << RSDN@Home 1.1.3 stable >>
Re[9]: названия цветов
От: Tuo_Bellas Россия  
Дата: 27.04.04 23:45
Оценка:
Здравствуйте, kiborg, Вы писали:

K>А вот вам ещё:


K>Раскладка цветовой гаммы по

K> RGB-составляющим

[...]

Круто, спасибо. А источник можно узнать, если не секрет?

Tuo_Bellas.
Re[10]: названия цветов
От: kiborg Россия  
Дата: 28.04.04 04:42
Оценка:
Здравствуйте, Tuo_Bellas, Вы писали:


T_B>Круто, спасибо. А источник можно узнать, если не секрет?


А что и этого мало?
Понятия не умею. Много лет уже у меня файлик этот лежит.
Можно его источником считать.
... << RSDN@Home 1.1.3 stable >>
Re[10]: названия цветов
От: butcher Россия http://bu7cher.blogspot.com
Дата: 28.04.04 04:49
Оценка:
Здравствуйте, Tuo_Bellas.

Вы писали 28 апреля 2004 г., 3:45:38:

T> Круто, спасибо. А источник можно узнать, если не секрет?


я видл такую табличку в каком-то майкрософтоском хэлпе по HTML

--
С уважением, butcher
Posted via RSDN NNTP Server 1.8

Нет ничего невозможного..
Re[11]: названия цветов
От: Tuo_Bellas Россия  
Дата: 28.04.04 22:37
Оценка:
Здравствуйте, butcher, Вы писали:

B>я видл такую табличку в каком-то майкрософтоском хэлпе по HTML


Меня, на самом деле, интересовало происхождение перевода на русский.

Спасибо.
Tuo_Bellas.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.