Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Искажаются цвета Bitmap'а при повторной отрисовке [D6, WinXP]


Vlad2 ©   (2004-08-26 16:02:00) 

Рисую что-то на Canvas'е Bitmap'а (заливаю области, провожу линии ...). Затем использую тот же Bitmap для размещения другой картинки из файла (LoadFromFile). Всё нормально. Но когда сразу же после этого я повторно рисую на Canvas'е этого Bitmap'а, некоторые цвета становятся другими.
Наверное, это какое-то несоответствие палитр? Может быть надо как-то сохранять старую палитру перед LoadFromFile, а потом её возвращать Bitmap'у? Но я не понимаю, как это сделать.
Наверное, вопрос простой, но у меня затык. Может кто-то поможет, а то в FAQ'ах подобного не нашёл?
Спасибо.


Vlad2   (2004-08-27 10:22:00) [1]

Большое спасибо, Анонимщик!
После загрузки из файла менялся TBitmap.PixelFormat (с pf24bit на pf8bit). Перед повторной отрисовкой стал его поправлять, и проблема решилась.


Анонимщик   (2004-08-26 17:17:00) [2]

Посмотри сначала, отличаются ли до и после:
TBitmap.HandleType
TBitmap.PixelFormat
TBitmap.Palette

Вот когда выяснишь, тогда и будешь принимать меры.


Наверх

Титульная страница Поиск, карта сайта Написать письмо