问题标签 [ppi]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
46 浏览

android - 如何在 Android Studio 中为三星 Galaxy Note plus 和 Google Pixel XL3 创建单独的值文件夹

我正在创建以显示从左到右和从右到左的虚拟卡刷卡视图。所以,我试图在 Android UI 部分为下面提到的手机提供通用宽度和高度(xxxhdpi-values dimen.xml)。

三星 Galaxy Note plus 6.8 英寸,1440*3040,498 PPI。

谷歌 Pixel XL3 安卓手机。 6.3 英寸,1440w*2960h,523 ppi 密度。

都检测 xxxhdpi 值文件夹。所以,如果我给出共同的宽度 dp 值。然后,两者的屏幕设计呈现出不同的卡片 UI 对齐方式。UI 不适合两种设备的屏幕。

所以,如果我想调整三星设备,谷歌像素设计会崩溃/不合适。

所以,我在想,这是一个很好的解决方案,就像我想为这两个设备创建单独的值文件夹一样。

很久以前,我有这个解决方案。请找到以下链接:

如何在 android 中创建单独的值文件夹 Sony Xperia Z1

例如:我试过这个三星:(它在 xxxhdpi-values 文件夹(640dpi)中检测)。dp=px/(dpi/160) 所以,dp = 1440/(640/160)=360 。所以,我得到了 values-sw360dp。确切地说,我不知道,这种方法是否正确,现在。

我也提到了这个链接。但是,仍然不清楚。

android中的不同值文件夹

如何为android中每个不同的屏幕尺寸定义dimens.xml?

任何人都可以帮助/建议有关此 UI 问题的任何替代/更好的解决方案。它也可能对更多的安卓开发者有所帮助。

谢谢提前。

参考:支持不同的像素密度:

https://developer.android.com/training/multiscreen/screendensities

用于低密度 (ldpi) 屏幕 (~120dpi) 的 ldpi 资源。

用于中等密度 (mdpi) 屏幕 (~160dpi) 的 mdpi 资源。(这是基线密度。)

hdpi 用于高密度 (hdpi) 屏幕 (~240dpi) 的资源。

用于超高密度 (xhdpi) 屏幕 (~320dpi) 的 xhdpi 资源。

用于超高密度 (xxhdpi) 屏幕 (~480dpi) 的 xxhdpi 资源。

用于超超超高密度 (xxxhdpi) 用途 (~640dpi) 的 xxxhdpi 资源。

0 投票
0 回答
83 浏览

c++ - 如何从 QGuiApplication 读取屏幕信息以放入 qputenv 环境变量?

目的是在具有不同 PPI 的屏幕上运行此应用程序。

Qt 5.12

问题是,qputenv如果在QGuiApplication.

我想根据来自 QGuiApplication 的信息计算比例。

我该怎么做?以下代码引发分段错误。

0 投票
2 回答
146 浏览

android - 安卓 | 为什么在具有相同分辨率和相同屏幕尺寸的两部不同手机上,活动看起来会有所不同?

设想

我正在开发一个随机应用程序,最近我遇到了一个问题。我在 Google pixel 3a xl android 模拟器和 Asus X00TD 物理设备上运行相同的应用程序。而且我知道华硕手机的用户界面真的发生了变化。

Pixel 3a XL 显示器规格:

显示尺寸:6.0 英寸分辨率:2160 × 1080 ppi:402ppi

华硕 X00TD 显示器规格:

显示尺寸:6.0 英寸分辨率:2160 × 1080 ppi:403ppi

您会看到它几乎相同,只是 ppi 不同,我认为这不会产生很大的不同。大约 6 个像素会受到影响,这不会改变整个 UI。我不知道dpi华硕x00td的分辨率。而且我在网上也找不到。

这是像素 3a xl 和华硕 x00td 之间的 UI 差异。

6.0寸手机对比

如您所见,模拟器和实体手机之间存在很大差异。所以,我有2个问题

  1. 有一种方法可以通过函数计算 dpi。但是,如果我没有手机但仍想知道该手机的 dpi res 怎么办?

  2. 为什么模拟器和实体手机差别很大?

编辑

我试图在互联网上计算它,但它给了我0.0631mm点间距。我无法理解它是什么。模拟器还显示像素 3a xl 具有400dpi分辨率。

400dpi那么,和有什么区别0.0631mm dot pitch

我尝试过的解决方案

我试图通过将最小宽度设置为 360dp 来模拟模拟器中的华硕设备。最初它看起来和华硕一样。模拟器正在xhdpi挑选dimens.xml. 所以,我做了修改dimens.xmlxhdpi但是华硕没有选择那个文件。相反,它选择了xxhdpi文件。在另一台设备 Realme 3 pro 中使用。我无法修改xxhdpi文件,因为它会弄乱所有 6 英寸以上显示屏手机的 UI。同时华硕仍在挑选xxhdpi文件,华硕的用户界面一团糟。

找不到解决办法。

0 投票
1 回答
33 浏览

react-native - React-Native:文本在不同手机中呈现不同

这是我用来渲染文本的样式

输出如下,

三星

在此处输入图像描述

一加

在此处输入图像描述

iPhone 12 专业版

在此处输入图像描述

iPhone 6

在此处输入图像描述

即使 Styling 相同,但 fontSize 和 fontWeight 在不同屏幕中是不同的。

这是在移动应用程序中发生的自然现象,还是有任何方法可以在多个设备之间实现某种统一?

(请原谅更大的图像。如果我压缩则很难识别差异)

谢谢你。

0 投票
0 回答
16 浏览

image-resizing - 调整要添加到笔记上的图像大小

为了获得合理的文件大小,是否应将某个尺寸或 ppi 的图像缩减为(调整大小或压缩)的行业标准/指南。最好是 2MB 阈值。

我们正在添加一个功能来将图像添加到 iPhone 笔记/做应用程序。但我们希望以最佳图像质量和合理大小的文件上传文件为目标。

0 投票
0 回答
16 浏览

javascript - 如何计算已知大小的打印区域的图像 PPI?

在几周的时间里,我已经多次阅读了这个答案,它是相关主题的一个很好的速成课程,其中一些学习适用于我的用例,但我不关心显示器或物理设备的屏幕尺寸。

在我的用例中,用户正在上传 .png 文件,在存储或进行任何后端调用之前,我想验证它是否满足最低 PPI 要求。

目前我使用的公式很简单,已知打印区域的斜边为 20 英寸,然后取图像的宽度和高度以像素为单位计算它的对角线距离,然后将其除以 20 得到 PPI。据我了解,这应该适用于我的目的;在大多数情况下。如果这个假设是错误的,请纠正我。

我需要帮助解决的问题是 .png 文件允许透明像素这一事实,这引入了必须更改我的公式以通过查找第一个和最后一个非透明像素之间的距离来计算高度和宽度的问题两个各自的轴。

我想知道是否有一个 react 或 javascript 库可以帮助进行这种内省,或者我是否被迫构建一些后端服务来使用图像魔术或类似的东西进行这种分析。我想避免往返 API,但我知道这种分析是否会占用大量资源,以至于在后端进行分析会产生更多收益。

我也愿意接受替代解决方案。

0 投票
1 回答
193 浏览

delphi - 为什么德尔福报告的PPI与计算出来的不一样?

我使用 Delphi 10.3 Rio,并且需要知道屏幕 PixelsPerInch 比率来相应地扩展我的应用程序。

公式计算,我的屏幕有 142 ppi。(实际值是:15.5" 对角线和 1920 x 1080 分辨率)。但是当我在 Delphi 中读取该Screen.PixelsPerInch属性时,我得到 134 !而且这个值也是我创建PixelsPerInch的每个属性中的报告TForm。那么,为什么会有这种差异?真正的ppi?

AIDA64 报告的实际值为 142 ppi...所以我认为 Delphi 中的每英寸像素比率有问题... 在此处输入图像描述

编辑:

我设法用这段代码获得了真正的 PPI……但我无法在每个 Delphi 组件中更改它。所以,如果我在我的组件中使用这个值,我会不会把一切都搞砸了?

0 投票
0 回答
7 浏览

image - 如何获得相机镜头和FOV的物理尺寸?

我有图像元数据,其中包括焦距、PPI(XResolution、YResolution)、图像宽度和高度。有一些公式可用于获取相机的 FOV,它使用相机传感器的焦距和物理尺寸。现在我想提取相机传感器的物理尺寸。有什么办法吗?