gpt4 book ai didi

c++ - 屏幕像素分辨率(毫米)

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:57:16 29 4
gpt4 key购买 nike

是否可以使用 Win32 API 获取以毫米为单位的屏幕像素分辨率?我有一个应用程序在我的 1280x1024 显示器上显示 0.3472222222222222 作为这个值,分辨率为 96 dpi。但我无法找出它是如何获得这个值(value)的。任何线索都会有所帮助。如果需要,我也可以使用 MFC。

编辑抱歉造成混淆,我说的软件没有使用当前的屏幕分辨率。它正在从一些配置文件中读取它。

最佳答案

获取显示器的设备上限可以为您提供以像素和毫米为单位的尺寸,因此:

HDC screen = GetDC(NULL);
int hSize=GetDeviceCaps(screen,HORZSIZE);
int hRes=GetDeviceCaps(screen,HORZRES);
float PixelsPerMM=(float)hRes/hSize; // pixels per millimeter
float PixelsPerInch=PixelsPerMM*25.4; //dpi

关于c++ - 屏幕像素分辨率(毫米),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1999724/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com