zoukankan      html  css  js  c++  java
  • 获取windows操作系统分辨率(DPI)

    // ScreenDPI.cpp : Defines the entry point for the console application.
    //

    #include "stdafx.h"
    #include <iostream>
    #include <windows.h>
    #include <math.h>
    using namespace std;

    // 1毫米=0.039370078740157英寸 
    #define INCH 0.03937

    float GetDPI()
    {
        HDC hdcScreen;
        hdcScreen = CreateDC(L"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;
    }

    int _tmain(int argc, _TCHAR* argv[])
    {
        GetDPI();
        system("pause");
        return 0;
    }
  • 相关阅读:
    C#获取MAC地址
    C#洗牌
    删除前提示
    简单MD5加密
    读取EXCEL所有列名C#
    gridview二次加载样式丢失
    迅雷API接口(及示例演示)
    [转]Servlet过滤器介绍之原理分析
    [转]MySQL运行状态show status中文详解
    [转]如何修改mysql root密码
  • 原文地址:https://www.cnblogs.com/freemindblog/p/5704607.html
Copyright © 2011-2022 走看看