Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.02.27;
Скачать: CL | DM;

Вниз

Рисование по hBitmap   Найти похожие ветки 

 
Strech   (2005-01-06 07:25) [0]

Помогите решить простую задачу: есть некоторый hBitmap, нужно на нем нарисовать линию. Функция LineTo использует некоторый HDC. Вопрос, собственно, как получить для hBitmap контекст hdc? Bitmap имеет отличные от экрана число цветовых плоскостей и число битов цвета на пиксель.


 
tesseract   (2005-01-06 11:46) [1]

hdc - это контекст устройства

вот пример из MSDN

// Create a normal DC and a memory DC for the entire screen. The
// normal DC provides a "snapshot" of the screen contents. The
// memory DC keeps a copy of this "snapshot" in the associated
// bitmap.

hdcScreen = CreateDC("DISPLAY", NULL, NULL, NULL);
hdcCompatible = CreateCompatibleDC(hdcScreen);

// Create a compatible bitmap for hdcScreen.

hbmScreen = CreateCompatibleBitmap(hdcScreen,
                    GetDeviceCaps(hdcScreen, HORZRES),
                    GetDeviceCaps(hdcScreen, VERTRES));

if (hbmScreen == 0)
   errhandler("hbmScreen", hwnd);

// Select the bitmaps into the compatible DC.

if (!SelectObject(hdcCompatible, hbmScreen))
   errhandler("Compatible Bitmap Selection", hwnd);

       // Hide the application window.

       ShowWindow(hwnd, SW_HIDE);

        //Copy color data for the entire display into a
        //bitmap that is selected into a compatible DC.

       if (!BitBlt(hdcCompatible,
              0,0,
              bmp.bmWidth, bmp.bmHeight,
              hdcScreen,
              0,0,
              SRCCOPY))

       errhandler("Screen to Compat Blt Failed", hwnd);

       // Redraw the application window.

       ShowWindow(hwnd, SW_SHOW);


 
Strech   (2005-01-10 04:26) [2]

Это все понятно. Только у дисплея стоит 32 бита на пиксель, а Bitmap может иметь как 32 так и 1 бит/пиксель и мне нужено получить контекст с соответствующей цветовой организацией.


 
tesseract   (2005-01-11 10:45) [3]

Не понял вопроса - вот тебе канва на которой рисуешь нужным цветом.
Она такая какую девайс предоставляет те 32 бита. Цветность - это уже формат файла



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

Текущий архив: 2005.02.27;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.041 c
14-1107874227
TUser
2005-02-08 17:50
2005.02.27
К нам Митник едет.


1-1108024952
VladRaven
2005-02-10 11:42
2005.02.27
RxDBLookupList как програмно установить (выделить синим).


1-1108475127
Muh
2005-02-15 16:45
2005.02.27
Как связать расширение файла с моей программой


4-1105963795
mutabor
2005-01-17 15:09
2005.02.27
mdi форма


1-1108003250
vidiv
2005-02-10 05:40
2005.02.27
Защита программы от копирования.