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

Как преобразовывать палитры цветов?   Найти похожие ветки 

← →
Sormy   (2004-06-17 00:40) [0]

Как установить битмапу тип там 8бит или 24 бита или 32 бита?
Каков алгоритм преобразовывания цвета из 32бит в 24 бита и обратно?


← →
SPeller ©   (2004-06-17 06:21) [1]

Bitmap.PixelFormat := pf24bit (pf1bit, pf8bit, etc)


← →
Sormy   (2004-06-17 10:31) [2]

Это я уже пробовал, но ничего из этого не вышло. Даже если я битмапу задаю 1 бит, он все равно цветным загружается...
Есть номер цвета в типе WORD. Но если пикселам присваивать его цвет, то цвет неправильно отображается... Как преобразовать номер 24 битного цвета в 32 битные и обратно?


← →
SPeller ©   (2004-06-17 11:51) [3]

Ты после загрузки PixelFormat присваивай.


← →
Sormy   (2004-06-17 12:20) [4]

Да... Работает...
но все равно отображается не так как надо...
Это видимо потому что исходный 24битный цвет имеет другой формат нежели стандартный 24битный виндовый.
Не знаешь, как у integer"a допустим только первый байт прочитать или только второй в пременную типа byte???


← →
SPeller ©   (2004-06-17 13:35) [5]

А ты хотел чтобы 24 бита после преобразования в 8 бит выглядели так же?


← →
Sormy   (2004-06-17 14:28) [6]

Так мы особо не наговорим...
Излагаю проблему полностью...
Я занимаюсь переводом игры Divine Divinity. Вскрыл все формат текстовых ресурсов... Теперь надо перевести шрифт... долго не мог допереть по какому алгоритму он написан... Теперь понял... Сейчас пишу редактор шрифтов... Все нормально открывает, но цвета не совпадают в игре и в моей проге...
В файле под каждый пиксел выделяется 2 байта, я подумал, что стандартный 16битный цвет, но, видимо, ошибся... Теперь бы надо как-нить его заставить нормально отображаться... Я уже начинаю думать, что какой-то из них под альфа канал установлен, хотя прозрачных шрифтов в игре не видел...


← →
SPeller ©   (2004-06-17 16:21) [7]

Значит палитра используется своя какая-то. В справке так и написано "The bitmap has a maximum of 256 colors, and the bmiColors member contains up to 256 entries. In this case, each byte in the array represents a single pixel." bmiColors - это и есть размер палитры. Теперь тебе нужно только узнать какую палитру использует игра и при сохранении своих битмапов преобразовывать к нужному формату. Как? Это уже не в этой конференции.


← →
Gandalf ©   (2004-06-17 19:41) [8]

Скажу больше в целом это и не тот сайт.


← →
SPeller ©   (2004-06-17 20:03) [9]

Ну почему же не тот? Вопрос по работе с битмапом, по-моему, вполне подходит к разделу Media.


← →
Dimaxx   (2004-06-22 21:39) [10]

Пользуясь случаем спрошу: нет у кого исходников оптимизации палитры методом Floyd-Steinberg? Желателен паскаль.


← →
Gandalf ©   (2004-06-23 23:56) [11]

Про google не слышал?
http://www.vclcomponents.com/search.asp?ID_CATEGORY=173&PGIX=14


← →
Dimaxx   (2004-06-24 22:50) [12]

Сырцов нет и под D4. К тому же шаровары. Нужны сырцы. Хотя бы .obj сишный. Чтоб прилинковать мона было.



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

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



Память: 0.47 MB
Время: 0.024 c
14-1105512249
NeyroSpace
2005-01-12 09:44
2005.01.30
Недавно открыл для себя ANTIMULT.RU


4-1102563017
111
2004-12-09 06:30
2005.01.30
Перезагрузка


4-1102333739
UFO
2004-12-06 14:48
2005.01.30
2 нити при старте программы


1-1106191143
Прогресс
2005-01-20 06:19
2005.01.30
Как сделать приложение на полный экран? Чтоб поверх панели задач?


1-1105700684
Dmitry_04
2005-01-14 14:04
2005.01.30
Как мне перевести свой тип в поток?




   Наверх