WPF 分辨率无关性原理
2017-04-13 10:55
274 查看
WPF在计算窗口尺寸大小时使用的是系统的DPI设置。WPF窗口以及窗口中所有的元素都是使用设备无关单位度量。一个设备无关单位被定义为1/96英寸。
[物理单位尺寸]=[设备无关单位尺寸]*[系统DPI]=1/96英寸*96dpi=1像素。
当系统默认dpi设置为96dpi时,也就是需要96个像素填充1英寸的空间,如果系统dpi设置为120dpi(对于高分分辨率显示器),这时的物理单位尺寸为:
[物理单位尺寸]=[设备无关单位尺寸]*[系统DPI]=1/96英寸*120dpi=1.25像素。
也就是说当把系统dpi设置为120dpi时,WPF渲染引擎假定了一个设备无关单位等于1.25个像素,如果显示了一个96*96大小的按钮,物理尺寸实际为120*120(96*1.25=120)。也就是说在一个标准显示器上(96dpi)大小为1英寸的按钮,在像素高的显示器上仍然为1英寸大小。
WIN7上更改系统dpi如下图:
本文来自hoho_luo的博客,原文地址:http://www.cnblogs.com/hoholuo/archive/2011/06/21/2086427.html
[物理单位尺寸]=[设备无关单位尺寸]*[系统DPI]=1/96英寸*96dpi=1像素。
当系统默认dpi设置为96dpi时,也就是需要96个像素填充1英寸的空间,如果系统dpi设置为120dpi(对于高分分辨率显示器),这时的物理单位尺寸为:
[物理单位尺寸]=[设备无关单位尺寸]*[系统DPI]=1/96英寸*120dpi=1.25像素。
也就是说当把系统dpi设置为120dpi时,WPF渲染引擎假定了一个设备无关单位等于1.25个像素,如果显示了一个96*96大小的按钮,物理尺寸实际为120*120(96*1.25=120)。也就是说在一个标准显示器上(96dpi)大小为1英寸的按钮,在像素高的显示器上仍然为1英寸大小。
WIN7上更改系统dpi如下图:
本文来自hoho_luo的博客,原文地址:http://www.cnblogs.com/hoholuo/archive/2011/06/21/2086427.html
相关文章推荐
- 关于WPF中宽高分辨率无关的理解
- WPF单位真的与分辨率无关吗?
- WPF 分辨率无关性原理
- WPF单位真的与分辨率无关吗?
- [转]WPF单位真的与分辨率无关吗?
- WPF单位真的与分辨率无关吗?
- WPF 分辨率无关性原理
- WPF 分辨率无关性原理
- 2000条你应知的WPF小姿势 基础篇<78-81 Dialog/Location/WPF设备无关性>
- WPF 窗口在右下角出现,识别分辨率
- WPF介绍之三--分辨率的独立性
- 2000条你应知的WPF小姿势 基础篇<78-81 Dialog/Location/WPF设备无关性>
- wpf 根据不同屏幕分辨率自动适应屏幕
- WPF 获取屏幕分辨率
- WPF学习01——分辨率的无关性
- PaintCode:创建跟分辨率无关的 iOS 8 应用
- WPF 获取屏幕分辨率(获取最大宽高)
- C# WPF 界面根据分辨率的大小自适应
- WPF 与设备无关的单位
- WPF 获取屏幕分辨率(获取最大宽高)