Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.03.14;
Скачать: CL | DM;

Вниз

24-битный цвет в 8-битный   Найти похожие ветки 

 
Borealis   (2003-11-09 19:23) [0]

По какой формуле преобразуется 24-битный цвет (т.е. обычная переменная типа TColor с тремя однобайтовыми компонентами R, G и B), в 8-битный (т.е. 256-цветный)?


 
miek ©   (2003-11-09 22:23) [1]

По разным. Смотря какую палитру брать для 8-битного режима. Проще всего Greyscale или Uniform (можете посмотреть в Фотошопе). Или для каждой точки искать наиболее близкий цвет в палитре методом полного перебора.


 
крот   (2003-11-10 16:20) [2]

Я бы делал так:

1. Получил бы шаг для 256 цветового режима. То есть, всего цветов
в 24-битном режиме 16777215, значит для 256 цветового режима цвета будут различаться через 16777215/256 значений.

2. Далее, через цикл нашел бы соответсвующий цвет в 256 режиме

var
Color256: TColor; //искомый цвет
Step: integer; //Цветовой шаг
flag: boolean; //признак того, что цвет найден
Color: TColor; //исходный цвет в 24-битном режиме

flag := false;
while (Color256 < 256) and
(not flag)
begin
if (Color256 >= Color)
flag := true
else
Color256 := Color256 + Step;
end;

на выходе Color256 будет иметь ближайшее к исходному Color значение. По-моему так.


 
Mihey ©   (2003-11-11 00:16) [3]

2 крот:

Хорошо бы, если сосчитать количество всех уникальных цветов данного изображения и тогда можно точнее составить палитру для 256-цветного изображения.



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

Текущий архив: 2004.03.14;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.044 c
3-43356
Gerakl
2004-02-16 10:55
2004.03.14
ADO


4-43934
Эдуард
2003-12-26 15:21
2004.03.14
Как изменить высоту Items ов в TTreeView?


14-43760
Delphin
2004-02-19 15:11
2004.03.14
Hi all!! Кто - нить знает принципы работы Нюков ? (Nuke)


14-43844
MYSTERYO
2004-02-22 11:14
2004.03.14
кнВверх_Щелк или Delphi в гоблиновском переводе ;) Рекомендую


1-43607
Kyrt
2004-03-03 02:41
2004.03.14
DLL