gpt4 book ai didi

windows - 所有 Windows PC 显示器上的每英寸像素数都是标准的吗? (LogPixelsX) 在 GetDeviceCaps WinAPI 调用中

转载 作者:可可西里 更新时间:2023-11-01 12:59:42 27 4
gpt4 key购买 nike

我所说的 Windows PC 显示器并不是指 Windows CE 或手持设备等。

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

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

在我看到的示例中,它设置为 88,不管屏幕 DPI。似乎是一个神奇的数字类型的常量。

在相关Question我正在使用 GetDeviceCaps 来计算当前的屏幕字体 DPI。我查到的代码示例都有:

常量 LOGPIXELSX = 88

这对所有显示器来说都是一样的吗(甚至是宽屏显示器还是普通显示器)?如果没有,我如何为当前显示找到它。 (MSDN 表示它对于特定计算机上的所有显示器都是相同的。

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

最佳答案

回答您对问题的澄清:

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

MSDN 中的注解指的不是参数,而是返回值。

关于windows - 所有 Windows PC 显示器上的每英寸像素数都是标准的吗? (LogPixelsX) 在 GetDeviceCaps WinAPI 调用中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/645352/

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