您的位置:首页 > 其它

WPF 分辨率无关性原理

2017-03-12 17:34 148 查看
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如下图:



总结就是:随着设置的分辨率越高,显示1英寸所需的DPI就越多。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  wpf