[ Содержание ] | [ Перечень функций ] |
Status XLookupColor(display, colormap, color_name, exact_def_return, screen_def_return) Display *display; Colormap colormap; char *color_name; XColor *exact_def_return, *screen_def_return;
АРГУМЕНТЫ
Эта функция возвращает в аргументе exact_def_return значения RGB, соответствующие указанному названию цвета color_name, извлекая их из текстовой базы данных названий цветов, хранящейся на X-сервере. Кроме значений RGB в exact_def_return устанавливается поле flags, указывающее на то, какие значения из RGB используются для формирования цвета.
В screen_def_return возвращаются значения RGB, которые поддерживаются аппаратным обеспечением экрана и которые будут реально использоваться в случае дальнейшей работы с цветом.
Идентификатор палитры colormap служит только для определения экрана. Никаких значений из палитры не извлекается.
Регистр символов в названии цвета роли не играет. В случае, если название цвета найдено и значения RGB были получены, возвращается ненулевой статус, иначе статус будет нулевым.
Вместо указания имени цвета, в аргументе color_name можно указать значения RGB. Формат строки в этом случае будет выглядеть следующим образом:
rgb:<red>/<green>/<blue> где <red>, <green>, <blue> - одно из (h или hh или hhh или hhhh). h - это одна шестнадцатеричная цифра (четыре разряда).
Для обратной совместимости поддерживается старый формат представления значений RGB в названии цвета:
#RGB (4 разряда на канал) #RRGGBB (8 рарядов на канал) #RRRGGGBBB (12 разрядов на канал) #RRRRGGGGBBBB (16 разрядов на канал)
Наличие символа '#' в названии цвета указывает на то, что дальше будут идти значения RGB. Символы R, G и B представляют собой шестнадцатеричные цифры. Все значения приводятся к формату 16 разрядов на канал путем перевода указанных цифр в старшие разряды 16-разрядного слова. Таким образом #3a7 будет эквивалентом #3000a0007000. Такой формат представления цвета и названия цветов из текстовой базы X-сервера были использованы для обозначения цветов в HTML. Однако, такое представление значений RGB в названии цвета не рекомендуется к дальнейшему использованию в приложениях X Window.
Также поддерживается яркостное представление RGB:
rgbi:<red>/<green>/<blue>
Где <red>, <green> и <blue> - вещественные числа в диапазоне от 0.0 до 1.0 включительно. Допустимо использование экспоненциальной формы записи (пример: 1.2E-1).
Функция XLookupColor может генерировать следующие ошибки:
См. также: XAllocColor, XAllocNamedColor, XAllocColorCells, XAllocColorPlanes, XQueryColors, XParseColor, XFreeColors, XStoreColor, XCreateColormap.
[ Содержание ] | [ Перечень функций ] |