下面语句的含义是什么:
我的系统分辨率是 1024 x 768 @ 96 DPI
我无法理解当我们在固定分辨率下增加 DPI 时,用 VC++/MFC 或 C#/Winform 应用程序开发的用户界面会扩展(看起来比 96 DPI 时更大)的内部数学。
例如,我们以 96 DPI 开发用户界面,这意味着每英寸 96 个点。现在,当我们增加 DPI 时,我们也在增加每英寸点数,那么用户界面应该看起来是压缩的而不是放大的。
我是在 windows 7 机器上做的
请帮忙!!
最佳答案
My system resolution is 1024 x 768 at 96 DPI
这意味着您的计算机认为您的显示器每英寸有 96 个点(像素)(在此分辨率下)。当程序进行图形计算时,它使用此设置在实际长度(以英寸或厘米为单位)和像素之间进行转换。
如果 96 DPI 设置与您的显示器匹配(即显示区域为 1024/96=10.67 x 768/96=8 英寸),这将正确运行。
为什么当你增加这个设置时东西会变大?假设我们想要制作一个 1 英寸高的按钮,而您的显示器的实际 DPI 是 96,但您已将其设置为 150。1 英寸乘以每英寸 150 点得到 150 像素,因此我们将把按钮绘制为 150 像素高。但是我们显示器的真实 DPI 是 96,所以这显示为 150 像素/96 dpi = 1.56 英寸高。
关于wpf - 关于分辨率与 DPI 的问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6017186/