android - 根据 DPI 和物理尺寸计算像素

标签 android dpi screen-size

我正在尝试为 Android 制作 Evolus Pencil 模板。我的设备有一个 1.75x2.5625"的屏幕,我想模拟这些精确的物理尺寸。阅读这篇文章: Android multiple screen sizes with same density 我看到物理尺寸 = 像素/密度。因此,如果我在 96dpi 屏幕上创建一个 168px 宽的图像,我是否应该得到一个 168/96=1.75"宽的物理图像?

因为我得到一个大约 1.5 英寸的屏幕,我迷路了。我正在运行 Ubuntu 并使用 xdpyinfo 确认我的屏幕 dpi 为 96x96。那么我可以使用什么公式呢?我在想可以得到像素需要将我们在屏幕上想要的英寸乘以屏幕的 dpi,但这给了我上面提到的 168,显然让我无处可去。

谁能给我指出正确的方向,老实说,我对数字和数学很糟糕,所以如果我遗漏了一些简单或明显的东西,我深表歉意。

最佳答案

您确定显示器实际上是 96 ppi 吗?根据规范和我自己的计算,您的 Lenovo S10e 实际上具有 ~116.36 ppi 的密度,这可能是您的差异所在。

假设这些规范是正确的:
10.1 英寸对角线
1024 x 576 分辨率
16:9 屏幕比例(以上分辨率截取)

使用一些几何公式,您可以得到显示器的实际宽度和高度为:

宽度:8.8 英寸
高度:4.95 英寸

除以 1024/8.8 和 576/4.95 得到每英寸 116.36 像素,而不是 96。

使用它,一个 168 像素的图像应该显示为 168/116.36,或 ~1.44",这与你的结果一致。我不会太相信 xdpyinfo 的结果。:)

关于android - 根据 DPI 和物理尺寸计算像素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5399898/

相关文章:

android - 不同宽度的按钮未与 layout_weight 正确对齐

android - 我应该为摩托罗拉 TC55 等屏幕密度/尺寸设置哪些资源限定符

user-interface - 如何在 React Native 中处理不同的屏幕尺寸?

c# - 创建 DPI 感知应用程序

android - 适用于 Amazon Kindle HDX 7"高清屏幕的正确布局资源文件夹

AndroidManifest.xml 中的 Android 兼容性设置

java - Android 上丢失 UDP 套接字数据包

java - 如何定期从ListView中删除项目?

android - 仅包含图标的表格布局

wpf - 关于分辨率与 DPI 的问题?