gpt4 book ai didi

android - dp是基于屏幕的物理尺寸吗? (dp = 1/160 英寸)

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:26:41 26 4
gpt4 key购买 nike

这个定义正确吗?

dp 与密度无关的像素 - 基于屏幕物理尺寸的 1/160 英寸。

我发现了相互矛盾的信息:

官方documentation假设在等式“px = dp * (dpi/160)”中按比例缩放。还有 here (3:02) Roman Nurik 说“按比例缩放

但是在官方文档中:

px Pixels - corresponds to actual pixels on the screen. in Inches - based on the physical size of the screen. mm Millimeters - based on the physical size of the screen. pt Points - 1/72 of an inch based on the physical size of the screen. dp Density-independent Pixels - An abstract unit that is based on the physical density of the screen. These units are relative to a 160 dpi (dots per inch) screen, on which 1dp is roughly equal to 1px. When running on a higher density screen, the number of pixels used to draw 1dp is scaled up by a factor appropriate for the screen's dpi. Likewise, when on a lower density screen, the number of pixels used for 1dp is scaled down. The ratio of dp-to-pixel will change with the screen density, but not necessarily in direct proportion.

如果我的定义是正确的,那么如果我们已经有了众所周知的 mm、in 和 pt,为什么还要引入新的物理尺寸度量?

最佳答案

mmin 这样的测量单位会更容易混淆,因为 dp 测量的是相同的现实世界观察长度。另一方面,这会产生误导,因为 dp 不是绝对定义的单位。

使用屏幕密度桶意味着 dp 有点模糊 - 但它会保持在合理的 (+/-20% ?) 精度范围内。真实世界的显示通常不完全是,例如160dpi 它们可以是 173.4 dpi,仍然被归类为 160dpi。将 dp 转换为屏幕上的像素所进行的数学运算是基于这些桶完成的,这意味着 dp 的准确性取决于您的设备屏幕与它的匹配程度分类。

但要消除您的疑问:无论您手持什么设备,160dp 始终是 1(模糊)英寸。更容易想到:50dp = 1(小)手指宽。


px 像素 另一方面是实际像素。全高清显示器有 1920x1080,但该单元没有说明屏幕尺寸或用户看到的像素有多大。 dpdip 是不同的单位,在我看来不应该被称为“像素”。

关于android - dp是基于屏幕的物理尺寸吗? (dp = 1/160 英寸),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20717887/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com