65,189
社区成员




#define INCH 0.03937
float GetDPI(){
HDC hdcScreen;
hdcScreen = CreateDC("DISPLAY",NULL,NULL,NULL);
int iX = GetDeviceCaps(hdcScreen, HORZRES); //pixel
int iY = GetDeviceCaps(hdcScreen, VERTRES); //pixel
int iPhsX = GetDeviceCaps(hdcScreen, HORZSIZE);//mm
int iPhsY = GetDeviceCaps(hdcScreen, VERTSIZE);//mm
if (NULL != hdcScreen){DeleteDC(hdcScreen);}
float iTemp = iPhsX * iPhsX + iPhsY * iPhsY;
float fInch = sqrt(iTemp) * INCH;
iTemp = iX * iX + iY * iY;
float fPixel = sqrt(iTemp);
float iDPI = fPixel/fInch;//dpi=pixel/inch
cout<<"DPI:"<<iDPI<<endl;
return iDPI;
}