Форум: "WinAPI";
Текущий архив: 2007.05.06;
Скачать: [xml.tar.bz2];
ВнизУзнать высоту, ширину, цвет точки HBITMAP-а без модуля Graphics Найти похожие ветки
← →
Dmitry_177 (2006-12-03 21:30) [0]Если загрузить битмап из файла в переменную типа HBITMAP так:
var
hBmp: HBITMAP;
...
hBmp := LoadImage(0, "1.bmp", IMAGE_BITMAP, 0, 0, LR_LOADFROMFILE);
Как можно узнать его высоту, ширину, и цвет в какой-то определенной точке не прибегая к модую Graphics?
← →
MBo © (2006-12-04 07:00) [1]GetObject
GetPixel
← →
Dmitry_177 (2006-12-07 17:22) [2]Я тут так подумал, может лучше так будет?
размер:
var
size: tagSIZE;
...
GetBitmapDimensionEx(hBmp, size);
цвет:
color := GetPixel(hBmp, x, y);
← →
Dmitry_177 (2006-12-10 19:05) [3]Вот если делать через GetDIBits, у меня возникло несколько вопросов:
var
memDC: HDC;
hBkgnd: HBITMAP;
begin
hBkgnd := LoadImage(0, "1.bmp", IMAGE_BITMAP, 0, 0, LR_LOADFROMFILE);
memDC := GetDC(0);
GetDIBits(memDC, hBkgnd, 0, 0, nil, BMI, DIB_RGB_COLORS);
ReleaseDC(0, memDC);
if (BMI.bmiColors[0].rgbRed = 255) and (BMI.bmiColors[0].rgbGreen = 0) and (BMI.bmiColors[0].rgbBlue = 0) then
MessageBox(0, "0 - Красный", "", 0);
end;
Правильно ли я создаю контекст устройства memDC := GetDC(0);?
Не понятно что это за массив bmiColors, как так идет счет точек что-то я не пойму, там же всего одно число а не два, например x и y... Объясните пожалуйста..
Страницы: 1 вся ветка
Форум: "WinAPI";
Текущий архив: 2007.05.06;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.055 c