Драсте, возникла проблема. Задача - попиксельная обработка нескольких контекстов экрана. Функции SetPixel и GetPixel слишком медленно работают. Вопрос - есть ли возможность обратится к растру, как к памяти, чтоб повысить эффективность обработки.
HDC hMemDc;
HDC hdc;
HBITMAP hBit;
hdc=GetDC(hWnd); // Получаю DC
hMemDc=CreateCompatibleDC(hdc); // Cоздаю совместимый контекст
hbit=CreateCompatibleBitmap(hdc,100,100); // Получаю совместимый растр
SelectObject(hMemDc, hBit); // Цепляю растр к совместимому конт.
....
Вообщем, есть ли способы обратиться к растру, как к памяти.
Заранее благодарен. Новичок TCoder
Работа с растрами через GDI API
Модераторы: Duncon, Hawk, Romeo, Eugie
Спасибо за помощь. Я нашел функцию попроще - GetBItmapBits и SetBitmapBits. Единственный недостаток - нужно много глобальной памяти.
GetBItmapBits и SetBitmapBits зависят от настроек графической системы Windows, особенно в части использования количества цветов (TrueColor, HighColor). Соответственно, на твоём компьютере может всё нормально работать, а на другом нет. Либо нужно писать универсальный алгоритм для работы с этими функциями.
Универсальность я учел, спасибо. Очередной вопрос по этой теме: Можно ди удалять растр, после того, как я его прицепил к контексту (SelectObject)