и вновь DC...
Glad to greet, comp.
Когда-то уже спрашивал про считывание данных из DC. Тогда я выводил
то, что надо было читать на GetDC(NULL), то бишь рабочий стол. Помню,
пытался создать свой DC (back buffer) для отрисовки в невидимую
область (а также на случай, если размер картинки больше разрешения
рабочего стола), но тогда ничего не удавалось считать (с помощью
BitBlt/GetDIBits) из созданного буфера (наверно создавал как-то не
так). Вопрос в том, как правильно создать внеэкранный буфер и затем
считать его содержимое? Заранее спасибо.
Не помню таких приколов, но когда мне нужно было что-то подобное, то
создавал контекст, совместимый с будущим целевым DC.
Создавал с помощью CreateCompatibleDC() на основе целевого. В результате
получался контекст размером 1х1. Затем с помощью CreateCompatibleBitmap()
создавал "поверхность" нужного размера и выбирал во внеэкранном контексте
SelectObject(). Всё должно работать. Только не забыть поосвобождать всё,
когда не нужно будет.
--
С уважением, boroda
Номер выпуска : 4953
Возраст листа : 743 (дней)
Количество подписчиков : 532
Адрес в архиве : http://subscribe.ru/archive/comp.soft.prog.prog/msg/448311
Получить правила : mailto:comp.soft.prog.prog-rules@subscribe.ru
Формат "дайджест" : mailto:comp.soft.prog.prog-digest@subscribe.ru
Формат "каждое письмо" : mailto:comp.soft.prog.prog-normal@subscribe.ru
Формат "читать с веба" : mailto:comp.soft.prog.prog-webonly@subscribe.ru