Имя: Пароль:
1C
 
Преобразование цветов
0 mricos
 
18.10.04
20:15
Господа, два вопроса.
Имеется команда ЦветФона, причем возможно два формата.
Цитата из хелпа:
Синтаксис:
ЦветФона(<R>,<G>,<B>)
Назначение:
Получить/установить режим отображения цвета фона области. Возвращает текущее числовое значение RGB-цвета фона области (на момент до исполнения метода).
Параметры:
<R> - числовое выражение, значение которого задает красную компоненту цвета. Допустимые значения от 0 до 255.
<G> - числовое выражение, значение которого задает зеленую компоненту цвета. Допустимые значения от 0 до 255.
<B> - числовое выражение, значение которого задает синюю компоненту цвета. Допустимые значения от 0 до 255.

и другой вариант:
ЦветФона(<Цвет>)
Назначение:
Получить/установить режим отображения цвета фона области. Возвращает текущее числовое значение RGB-цвета фона области (на момент до исполнения метода).
Параметры:
<Цвет> - необязательный параметр. Числовое выражение, значение которого задает RGB цвет. Допустимые значения от 0 до 16'777'215. Значение -1 (минус единица) задает цвет, заданный для всей области по умолчанию.

В 1С-ке элементы справочника выводятся в отчет с раскрашиванием фона в обоих форматах. Первый вариант используется скажем так для фиксированных цветов (используется 8 цветов), если пользователь хочет "выпендриться", то может указать любое число больше 16-и и меньше 16'777'215 и в этом случае выводится по второму варианту.
Теперь вопрос - можно ли перевести цвет из первого формата во второй?

Вообще, что это за формат задания цвета. Вообще имеется и вторая проблема: из 1С данные передаются на сайт и там эти цвета используются для вывода на сайте - так вот - там цвета визуально получаются совсем другие, чем в 1С.

Кто-нибудь - помогите.
1 Рупор абсурда
 
18.10.04
20:17
//-----------------------------------------------------------------------------
function rgbToColor(red=0,green=0,blue=0) export
 return blue*65536+green*256+red;
endFunction  
//-----------------------------------------------------------------------------
function colorToR(color) export
 return int(color/65536);
endFunction    
//-----------------------------------------------------------------------------
function colorToG(color) export
 return int((color%65536)/256);
endFunction    
//-----------------------------------------------------------------------------
function colorToB(color) export
 return (color%65536)%256;
endFunction
//-----------------------------------------------------------------------------
2 Crew
 
18.10.04
20:20
"Вообще имеется и вторая проблема: из 1С данные передаются на сайт и там эти цвета используются для вывода на сайте - так вот - там цвета визуально получаются совсем другие, чем в 1С. "

Поллитры разной емкости...
3 Рупор абсурда
 
18.10.04
20:21
(2) Вы сказали глупость ...
4 Рупор абсурда
 
18.10.04
20:22
5 mricos
 
18.10.04
20:23
Рупор абсурда, спасибо огромное.
А там порядок правильный? в плане следования цветов?

Crew, тоже спасибо за отклик. Что вы имеете в виду под "поллитры разной емкости"? Как это преодолеть?
6 Crew
 
18.10.04
20:24
(3)
А если так:
палитра цветов используемая в 1С отличается от палитры цветов используемой при отображении вебсайтов.
Или я что-то пропустил?
7 mricos
 
18.10.04
20:24
то (4) - не понял про эту ссылку. Чем она мне может помочь?
8 Рупор абсурда
 
18.10.04
20:28
(6) Информатику в 6 классе в первой четверти прогулял?
(5) Нет сперва идёт серобуромалиновый в крапинку, потом цвет детской неожиданности, а уж потом RGB ...
(7) Переводить цвета в представление для веб ...
9 mricos
 
18.10.04
20:33
:-) Ну ладно, не сердись, я понял.
"Переводить цвета в представление для веб ... " - имеется в виду перевести color в HEX?
10 Crew
 
18.10.04
20:34
(8)
Не было ее у нас :(
неучи мы.
11 Рупор абсурда
 
18.10.04
20:36
(9) Да ...
Стандартная запись цвета в вэб: #ХХХХХХ
Первые две ХХ - красный в хексе, вторые - зелёныё, а третьи - твой любимый ...
12 Рупор абсурда
 
18.10.04
20:36
(10) Всё учили на поллитре? ...
13 Crew
 
18.10.04
20:39
(12)
Все считалось в у.е. (не путать с уругвайскими ескудо)
Есть два вида языков, одни постоянно ругают, а вторыми никто не пользуется.