C# 获取 Windows 中每个显示器的 DPI 缩放比例

swift

1个回答

写回答

sshxj0056

2025-06-15 11:30

+ 关注

AI
AI

获取 Windows 中每个显示器的 DPI 缩放比例是一项常见的需求,特别是在开发涉及图形界面的应用程序时。在 C# 中,我们可以通过使用 System.Windows.Forms 命名空间提供的 Screen 类来实现这个功能。

获取主显示器的 DPI 缩放比例

首先,我们可以使用 Screen 类的 PrimaryScreen 属性来获取主显示器的信息。然后,通过调用主显示器的 GetDpiX 和 GetDpiY 方法,我们可以分别获取主显示器的水平和垂直 DPI 缩放比例。

下面是获取主显示器 DPI 缩放比例的示例代码:

using System;

using System.Windows.Forms;

class Program

{

static void MAIn()

{

Screen primaryScreen = Screen.PrimaryScreen;

float dpiX = primaryScreen.GetDpiX();

float dpiY = primaryScreen.GetDpiY();

Console.WriteLine("主显示器的 DPI 缩放比例:{0}x{1}", dpiX, dpiY);

}

}

获取所有显示器的 DPI 缩放比例

除了获取主显示器的 DPI 缩放比例外,我们还可以获取所有连接到计算机的显示器的 DPI 缩放比例。为此,我们可以使用 Screen 类的 AllScreens 属性来获取一个 Screen 数组,其中包含了所有显示器的信息。

下面是获取所有显示器 DPI 缩放比例的示例代码:

using System;

using System.Windows.Forms;

class Program

{

static void MAIn()

{

Screen[] allScreens = Screen.AllScreens;

foreach (Screen screen in allScreens)

{

float dpiX = screen.GetDpiX();

float dpiY = screen.GetDpiY();

Console.WriteLine("显示器 {0} 的 DPI 缩放比例:{1}x{2}", screen.DeviceName, dpiX, dpiY);

}

}

}

通过使用 C# 中的 System.Windows.Forms.Screen 类,我们可以轻松地获取 Windows 中每个显示器的 DPI 缩放比例。这对于开发图形界面应用程序时确保界面在不同 DPI 设置下的正确显示非常重要。上述示例代码展示了如何获取主显示器和所有显示器的 DPI 缩放比例,开发者可以根据自己的需求进行进一步的处理和调整。

举报有用(4分享收藏

Copyright © 2025 IZhiDa.com All Rights Reserved.

知答 版权所有 粤ICP备2023042255号