Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Media";
Текущий архив: 2004.02.25;
Скачать: [xml.tar.bz2];

Вниз

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

 
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 вся ветка

Форум: "Media";
Текущий архив: 2004.02.25;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.039 c
7-80322
Chery
2003-12-04 15:02
2004.02.25
Обратиться к флопику, открыть с дискеты файл ?


3-79615
Slavik_V
2004-02-02 03:14
2004.02.25
Два итоговых поля в QuickReport


1-79900
MainKaif
2004-02-10 09:21
2004.02.25
Консольные команды.


14-80250
Cosinus
2004-02-04 15:10
2004.02.25
Регулярные выражения и с чем их едят...


1-79971
Dmitriy_G
2004-02-13 16:11
2004.02.25
Время выполнения процедуры





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский