Yuan天空
Yuan天空
  • 我的主页
  • 博客随笔
  • 软件作品
    • TK精灵(进程守护)
    • 远程运维助手
    • DicomStoreSCU
    • TKOCR(离线OCR)
    • 更多...
  • 学习资源
  • 网址收藏
  • HTML模板
专注.NET开发技术领域
  1. 主页
  2. 博客
  3. 发布页

C# Graphics 获取桌面显示DPI 以及屏幕缩放比例方法

GraphicsGDI+桌面DPI桌面缩放比例
编程开发 2019-06-16 2364

Graphics 实现获取Windows 桌面DPI 桌面缩放比例的代码

///获取当前系统的dpi数值
private void SystemDpi(out int x, out int y)
{
            using (Graphics g = Graphics.FromHwnd(IntPtr.Zero))
            {
                x = (int)g.DpiX;
                y = (int)g.DpiY;
                g.Dispose();
            }
}

///根据当前系统dpi数值匹配 当前系统的桌面缩放比例
private double Scaling(int DpiIndex)//x或y都一样
{
            switch (DpiIndex)
            {
                case 96: return 1;
                case 120: return 1.25;
                case 144: return 1.5;
                case 168: return 1.75;
                case 192: return 2;
            }
            return 1;
}

调用例子

//x_dpi:横向dpi  y_dpi:纵向dpi 
int x_dpi = 0, y_dpi = 0;
//获取屏幕dpi  x_dpi或y_dpi取其一即可 (两者正常情况下 应该是一致的 不一致的话 屏幕显示应该变形了)
SystemDpi(out x_dpi,out y_dpi);
//再通过dpi数值 获取屏幕当前的缩放比例
double ScreenScale = Scaling(x_dpi);//或者  double ScreenScale = Scaling(y_dpi)
同类文章
JQuery 对标签标签内容几种常见的操作例子
Loading...
JQuery 对标签标签内容几种常见的操作例子
PDF文件流接口弹出下载提示不是直接预览的解决办法
Loading...
PDF文件流接口弹出下载提示不是直接预览的解决办法
c# 实现windows服务程序的安装、启动、暂停以及卸载 等管理功能
Loading...
c# 实现windows服务程序的安装、启动、暂停以及卸载 等管理功能
WPF 实现抽奖功能的全屏弹幕滚动效果
Loading...
WPF 实现抽奖功能的全屏弹幕滚动效果
vs编译时报错 不安全代码只会在使用 /unsafe 编译的情况下出现
Loading...
vs编译时报错 不安全代码只会在使用 /unsafe 编译的情况下出现
WinForm利用picturebox控件Paint方法绘制图形  实心圆、实心矩形
Loading...
WinForm利用picturebox控件Paint方法绘制图形 实心圆、实心矩形
备考2022年全国计算机技术 系统架构设计师全程指导 第2版
Loading...
备考2022年全国计算机技术 系统架构设计师全程指导 第2版
 C#实现图像以中心点任意角度旋转
Loading...
C#实现图像以中心点任意角度旋转
WPF 使用MahApps.Metro
Loading...
WPF 使用MahApps.Metro
ICSharpCode.SharpZipLib以文件流方式导出压缩包怎么实现
Loading...
ICSharpCode.SharpZipLib以文件流方式导出压缩包怎么实现
C# 要如何才能实现代码修改系统桌面显示的分辨率
Loading...
C# 要如何才能实现代码修改系统桌面显示的分辨率
WPF Frame实现功能类似web浏览器的历史记录倒退前进效果
Loading...
WPF Frame实现功能类似web浏览器的历史记录倒退前进效果
问题反馈/学习建议
1. 文明上网,理性表达,营造舒适的学习氛围
2. 请不要反馈提交与本页主题无关内容
学习资源
C#基于ffmpeg.exe实现视频添加字幕转GIF表情包的源码
Loading...
C#基于ffmpeg.exe实现视频添加字幕转GIF表情包的源码
 远程控制软件Radmin3.4 中文完整版(控制端和被控端)
Loading...
远程控制软件Radmin3.4 中文完整版(控制端和被控端)
基于WPF实现系统桌面录制gif+批量添加水印工具源码
Loading...
基于WPF实现系统桌面录制gif+批量添加水印工具源码
基于Wpf+MVVM实现的完整截图软件的框选区域效果源码
Loading...
基于Wpf+MVVM实现的完整截图软件的框选区域效果源码
visual studio 2019在线安装包和激活码密钥key
Loading...
visual studio 2019在线安装包和激活码密钥key
标题目录
  • Graphics 实现获取Windows 桌面DPI 桌面缩放比例的代码