Вниз
Скачать: CL | DM;

Алгоритм уменьшения глубины цвета   Найти похожие ветки 

 
JS   (2003-10-25 16:51) [0]

Подскажите какой-нибудь сабж. Описание, ссылки, исходники.

Заранее благодарен.


 
SkyRanger ©   (2003-10-26 11:43) [1]

Ну наверно можно попытаться использовать какую нить таблицу соответствия цветов, которая строится автоматически. Более конкретно подумай сам.


 
Dmk ©   (2003-10-26 15:21) [2]

Вот. Еще для DOS"а писал =).
Перевод из 8:8:8:8 -> 5:6:5

Function RgbTo565(const Color:DWord):Word;
asm
mov cl, al
shr cl, 3
mov dl, ah
shr dl, 2
shr eax, 8
mov ch, ah
shr ch, 3
xor ax, ax
or al, ch
shl ax, 6
or al, dl
shl ax, 5
or al, cl
end;

Для режима Paletted можно составить
приблизительно такой алгоритм.
Создаем таблицу из 256 элементов(Будущая палитра).
Попиксельно читаем значения цвета RGB.
Находим позицию в палитре:
Pos := (DWord(RGB)+ 1) div 65536;
Разбиваем Цвет пиксела на R,G,B составляющие
и заносим их в переменные.
Затем заносим в таблицу поэлементно
R, G и B значения и находим среднее
арефметическое сотавляющих для текущего пиксела
и предыдущего пиксела.
Заносим в таблицу ср. арфм. и продолжаем читать
пикселы дальше.
К сожалению алгоритм выдуман на ходу, поэтому
работоспособность не проверял.



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.021 c
3-79630
Sergei!
2004-02-01 08:23
2004.02.25
1C и Дельфи


3-79639
ivan01234
2004-01-31 19:26
2004.02.25
Как завершить приложение (при его содании), если IBDatabase т....


1-79716
DimaK
2004-02-12 17:24
2004.02.25
RichEdit + колесо мыши


1-79983
frost
2004-02-13 06:48
2004.02.25
32 bit иконки.


1-79890
ruslan_as
2004-02-10 11:03
2004.02.25
Как DateEdit заставить открывать нужный мне месяц




   Наверх