1. Difference between resolution and DPI:
Resolution: 显示器width*height有多大
DPI: 每 Inch 显示多少个点(dot)
DPI: 每 Inch 显示多少个点(dot)
2. How to get resolution:
a)
unsigned int w = ::GetSystemMetrics(SM_CXSCREEN);
unsigned int h = ::GetSystemMetrics(SM_CYSCREEN);
unsigned int h = ::GetSystemMetrics(SM_CYSCREEN);
b)
RECT rect;
::GetWindowRect(::GetDesktopWindow(), &rect);
unsigned int w = ::abs(rect.right - rect.left);
unsigned int h = ::abs(rect.bottom - rect.top);
::GetWindowRect(::GetDesktopWindow(), &rect);
unsigned int w = ::abs(rect.right - rect.left);
unsigned int h = ::abs(rect.bottom - rect.top);
3. How to get DPI:
HDC hDC = ::GetDC(0);
int dpiX = ::GetDeviceCaps(hDC, LOGPIXELSX);
int dpiY = ::GetDeviceCaps(hDC, LOGPIXELSY);
int dpiX = ::GetDeviceCaps(hDC, LOGPIXELSX);
int dpiY = ::GetDeviceCaps(hDC, LOGPIXELSY);