设备独立像素的优势是什么?

17

我正在学习WPF,WPF使用设备独立像素。但是我真的无法理解它们。如果大多数其他应用程序都是设备依赖型的,为什么设备独立像素更好,WPF应用程序不会突出呢?

3个回答

10
设备独立像素的优点在于,当指定用户界面时,您可以确定用户界面组件在用户设备上的显示大小,而不受用户屏幕分辨率的影响。不幸的是,它并不像这么简单,因为它需要用户将各种设置正确地设置,并且可能会被想要更改其设备分辨率的用户(例如部分视力障碍用户希望以低分辨率运行以便更容易阅读文本)所覆盖。
除了发布的其他链接外,您还可以查看此链接:WPF是否真正独立于分辨率? 请注意,设置 SnapsToDevicePixels 为 true,将控件捕捉到设备像素上,可以避免当水平/垂直线条绘制在两个设备像素之间的边界时出现模糊的情况。

7
在了解设备无关单位之前,需要了解 DPI 是什么。DPI 是每英寸点数,这意味着一英寸中会有一定数量的像素(通常为 96)。但重要的是要理解,在 Win32 环境下,这个英寸大小不是固定的物理英寸。因此,通过改变分辨率增加/减少点数时,每英寸中的点数会更多/更少,结果“英寸”大小会增加或减小。 然而,在 WPF 中,英寸大小与物理英寸一样好,因此每次 DPI 更改时,系统会相应地进行调整。

0

这是关于UI和字体缩放的问题,取决于系统的DPI设置:

并非所有应用程序都具有DPI感知功能:一些应用程序使用硬件像素作为主要的测量单位;更改系统DPI对这些应用程序没有影响。许多其他应用程序使用DPI感知单位来描述字体大小,但使用像素来描述其他所有内容。将DPI设置得太小或太大可能会导致这些应用程序出现布局问题,因为应用程序的文本随着系统的DPI设置而缩放,但应用程序的UI不会。使用WPF开发的应用程序已经解决了这个问题。

WPF通过使用设备独立像素作为其主要的测量单位而支持自动缩放,而不是硬件像素;图形和文本可以正确缩放,无需应用程序开发人员进行任何额外的工作。

这是从Kishore提供的链接中获取的。(http://msdn.microsoft.com/en-us/library/ms748373.aspx


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接