微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

所有Windows PC显示器上的每英寸标准像素数是多少? GetDeviceCaps WinAPI调用中的(LogPixelsX)

通过 Windows PC显示,我不是指Windows CE或手持设备等.

澄清
下面的一些人错误地认为我在询问显示器上的DPI(每英寸点数)是多少.我要求的是GetCaps API调用中LogPixelsX的值:

LOGPIXELSX沿屏幕宽度每逻辑英寸的像素数.

在我看过的例子中,无论屏幕DPI如何,它都设置为88.似乎是一个魔术数字常数.

在相关的Question中,我使用GetDeviceCaps来计算当前的屏幕字体DPI.我发现的代码示例都有:

Const LOGPIXELSX = 88

对于所有显示器(甚至是宽屏与常规显示器),这普遍相同吗?
如果没有,我如何找到当前显示器. (MSDN表示对于特定计算机上的所有监视器都是相同的.

在具有多个显示监视器的系统中,此值对于所有监视器都是相同的.

要回答您对问题的澄清:

LOGPIXELSX是您传递给GetDeviceCaps以获取当前显示器分辨率的参数(技术上是水平分辨率,但所有现代显示器具有相等的水平和垂直分辨率).是的,它始终是88 – 如果你想从GetDeviceCaps获得不同的值,你会传递一个不同的值.例如,要获得每个像素的位数,您将传递BITSPIXEL常量12,这些常量常量在Windows API文件WINGDI.h中定义.

MSDN中的注释不是指参数,而是指返回的值.

原文地址:https://www.jb51.cc/windows/364734.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐