D.R*_*.R. 5 .net c# .net-core .net-5
如何使用.NET Core确定屏幕尺寸?我想按照DotNetCore 在 Windows 中捕获屏幕截图中所述截取屏幕截图,但它们使用固定的 1920*1080 分辨率,这不适用于我的目的。
我是否必须引用 System.Windows.Forms 才能被固定到 Windows?
在切换到 .NET Core 之前,我们使用 System.Windows.Forms,如下所示:
new Size
{
Width = Screen.AllScreens.Sum(s => s.Bounds.Width),
Height = Screen.AllScreens.Max(s => s.Bounds.Height)
}
Run Code Online (Sandbox Code Playgroud)
这是我们可以再次使用的东西,但我们当然喜欢独立于平台的东西。
评论暗示尚不支持。
因此,我向您展示我们如何使用 Windows 窗体来实现它(我花了一些时间来了解如何在 .NET Core 库项目中正确引用 Windows 窗体):
您可以将 Windows 窗体依赖项添加到 csproj 文件中:
<ItemGroup>
<FrameworkReference Include="Microsoft.WindowsDesktop.App.WindowsForms" />
</ItemGroup>
Run Code Online (Sandbox Code Playgroud)
然后你可以Screen再次使用该类:
new Size
{
Width = Screen.AllScreens.Sum(s => s.Bounds.Width),
Height = Screen.AllScreens.Max(s => s.Bounds.Height)
}
Run Code Online (Sandbox Code Playgroud)
重要提示:这仅适用于 Windows,但至少它与 .NET Core 兼容。
| 归档时间: |
|
| 查看次数: |
4301 次 |
| 最近记录: |