Как разабраться с координатами, развертка экрана 1024*768 и GDI функции рисуют в данной метрики;функции же типо GetCursorPos() и GetSystemMetrics() утверждают что экран 4424*3153, как прийти к одной метрики, какие функции WinApi "преобразуют" из одной в другую?
Здравствуйте, ZZаСЛанеЦК, Вы писали:
ZZС>Как разабраться с координатами, развертка экрана 1024*768 и GDI функции рисуют в данной метрики;функции же типо GetCursorPos() и GetSystemMetrics() утверждают что экран 4424*3153, как прийти к одной метрики, какие функции WinApi "преобразуют" из одной в другую?
Используй GetDeviceCaps тока передай туда экраное DC, незнаю как для экрано будет ну для принтера у меня все нормально было.
Здравствуйте, ZZаСЛанеЦК, Вы писали:
ZZС>Как разабраться с координатами, развертка экрана 1024*768 и GDI функции рисуют в данной метрики;функции же типо GetCursorPos() и GetSystemMetrics() утверждают что экран 4424*3153, как прийти к одной метрики, какие функции WinApi "преобразуют" из одной в другую?
Logic points и device points конвертятся так:
BOOL LPtoDP(
HDC hdc, // handle to device context
LPPOINT lpPoints, // array of points
int nCount // count of points in array
);
BOOL DPtoLP(
HDC hdc, // handle to device context
LPPOINT lpPoints, // array of points
int nCount // count of points in array
);
Здравствуйте, Pagan, Вы писали:
P>Здравствуйте, ZZаСЛанеЦК, Вы писали:
ZZС>>Как разабраться с координатами, развертка экрана 1024*768 и GDI функции рисуют в данной метрики;функции же типо GetCursorPos() и GetSystemMetrics() утверждают что экран 4424*3153, как прийти к одной метрики, какие функции WinApi "преобразуют" из одной в другую?
P>Используй GetDeviceCaps тока передай туда экраное DC, незнаю как для экрано будет ну для принтера у меня все нормально было.
Хорошая функция,но именно для принтра и подобных устроиств, тут еще подсказали LPtoDP & DPtoLP — помоему лучше.
...а экранноый девайс GetWindowsDC