Windows 7中有显示设置(控制面板->显示)。它允许更改文本和屏幕上其他项目的大小。我需要获得此设置,以便能够基于设置值在C#应用程序中打开/关闭某些功能。那可能吗?
此设置是屏幕DPI或每英寸点数。
像这样阅读:
float dpiX, dpiY; Graphics graphics = this.CreateGraphics(); dpiX = graphics.DpiX; dpiY = graphics.DpiY;
我认为目前X和Y值不可能相同。值96对应于100%字体缩放(较小),值120对应于125%缩放(中等),而144对应于150%缩放(较大)。但是,用户可以设置这些标准值以外的值。
请注意,除非您的应用程序声明为DPI感知的,否则您观察到的值可能会受到DPI虚拟化的影响。