• 手机屏幕参数


    常用尺寸单位:

    px:即像素(pixel)。是屏幕的绝对像素,屏幕有多少个像素就是多少像素。不同的手机设备上,像素的物理大小不一样。

    inch:英寸,1 英寸约等于2.54厘米,用对角线(diagonal)的长度来描述手机屏幕的大小。

    ppi:(pixels per inch每英寸像素),每英寸上的物理像素数数目,即 "像素密度“。ppi越大,颗粒感越弱,显示效果就越细腻。手机对角线ppi计算公式如下:

    拿一台5英寸,分辨率为1920px*1080px的手机来说(1920px就是公式里的纵向,1080px就是公式里的横向了),计算结果是440.581434。

    iOS专有尺寸单位:

    pt:(point),逻辑分辨率。注意区分印刷行业的pt(“磅”),详见下文中Android专有尺寸单位中的pt。

    早期的iPhone3GS的屏幕分辨率是320*480(PPI=163),在该设备上 1 point = 1 pixel(Point Per Inch=Pixel Per Inch=PPI)

    后来在iPhone4中,同样大小(3.5 inch)的屏幕采用了Retina显示技术,横、纵向方向像素密度都被放大到2倍,像素分辨率提高到(320x2)x(480x2)= 960x640(PPI=326),

    显像分辨率提升至iPhone3GS的4倍(1个Point被渲染成1个2x2的像素矩阵)。

    但是对于开发来说,iOS绘制图形的API依然以point为单位(measured in points)。

    1 point对应scale factor个pixel(在iPhone3GS中,缩放因子scale factor=1;在iPhone4~6中,缩放因子scale factor=2;在iPhone6+中,缩放因子scale factor=3)。

    手机 逻辑分辨率  宽x高(point 设备分辨率 宽x高(px) PPI Scale Factor 屏幕尺寸(对角线) 发布时间
    iPhone 12 390x844 1170x2532 460 3 6.06" 2020-10-13
    iPhone 11 Pro 375x812 1125x2436 458 3 5.85" 2019-09-20
    iPhone 11 414x896 828x1792 326 2 6.1" 2019-09-20
    iPhone X 375x812 1125x2436 458 3 5.85" 2017-11-03
    iPhone 8 Plus 414x736 1080x1920 401 3 5.5" 2017-09-22
    iPhone 8 375x667 750x1334 326 2 4.7" 2017-09-22
    iPhone 6s Plus 476x847 1242x2208 401 3 5.5" 2015-09-25
    iPhone 6s 375x667 750x1334 326 2 4.7" 2015-09-25
    iPhone 6 375x667 750x1334 326 2 4.7" 2014-09-19
    iPhone 3GS 320x480 320x480 163 1 3.5" 2009-06-19
    iPad 8th gen 810x1080 1620x2160 264 2 10.2" 2020-09-18
    iPad mini 2 768x1024 1536x2048 326 2 7.9" 2013-11-12
    iPad 4th gen 768x1024 1536x2048 264 2 9.7" 2012-11-12
    iPad mini 768x1024 768x1024 163 1 7.9" 2012-11-02
    iPad 2 768x1024 768x1024 132 1 9.7" 2011-03-11

    更多请参考: iOS Resolution

    Android专有尺寸单位: 

    dp(dip):即设备无关像素(device independent pixels),这种尺寸单位在不同设备上的物理大小相同。开发者为UI控件指定以dp为单位的size后,在不同屏幕密度的Android设备上便能够具有相同的物理尺寸。

    sp:独立比例像素(scale-independent pixel),与dp相似,但它主要用作字体的尺寸单位,与dp的区别是:Android系统支持用户设定字体大小(基准大小),因而sp的实际大小还会根据用户设定在原基础上进行缩放。

           推荐使用12sp、14sp、18sp、22sp作为字体设置的大小,不推荐使用奇数和小数,容易造成精度的丢失问题;小于12sp的字体会太小导致用户看不清。

    adb shell settings put system font_scale 1.15 // 将字体改为缺省的1.15倍。  // android 10: 小-0.85, 默认-1.0, 大-1.15, 最大-1.30

    pt:即:“磅”,用于印刷行业。通常用来作为字体的尺寸单位,1 pt相当于1/72英寸,约等于0.0353厘米。

    dpi:(dots per inch每英寸点数),即屏幕密度。密度越大,每英寸内容纳的点数就越多。很多时候,dpi被称为ppi

    但dpi并不是物理定义的,而是系统文件写进去的,所以这个值是可以被修改的

    想得到实际的ppi,可获取宽高像素大小和手机实际物理尺寸来计算得出

    对于Android手机来说,常见的dpi有如下几种:

    屏幕密度  具体定义 比例 大小
    ldpi(低密度)【120】 每英寸有[0,120]个像素点 0.75

    36x36像素

    = 36/120

    = 0.3英寸

    = 0.762厘米

    mdpi(中密度)【160】 每英寸有[120,160]个像素点 1.0【基准】

    48x48像素

    = 48/160

    = 0.3英寸

    = 0.762厘米

    hdpi(高密度)【240】 每英寸有[160,240]个像素点 1.5

    72x72像素

    = 72/240

    = 0.3英寸

    = 0.762厘米

    xhdpi(超高密度)【320】 每英寸有[240,320]个像素点 2.0

    96x96像素

    = 96/320

    = 0.3英寸

    = 0.762厘米

    xxhdpi(超超高密度)【480】 每英寸有[320,480]个像素点 3.0

    144x144像素

    = 144/480

    = 0.3英寸

    = 0.762厘米

    xxxhdpi(超超超高密度)【640】 每英寸有[480,640]个像素点 4.0

    192x192像素

    = 192/640

    = 0.3英寸

    = 0.762厘米

    获取手机dpi

    方法①:adb shell wm density

    Physical density: 480  // 小米6设备屏幕密度为480dpi

    如果使用命令修改过,那输出可能是:

    Physical density: 480
    Override density: 320 // 表明设备的屏幕密度缺省是480dpi,当前被修改为 320dpi

    注1:可通过adb shell wm density 320来将当前设备的dpi修改为320

    注2:通过adb shell wm density reset将当前设备的dpi还原为缺省设置

    方法②:adb shell getprop ro.sf.lcd_density来获取设备的缺省屏幕密度

    通过adb shell wm density将dpi设大后,被认为是高分屏,会使用分辨率更高的图标,因此图标会变大

    通过adb shell wm density将dpi设小后,被认为是低分屏,会使用分辨率更低的图标,因此图标会变小

    分辨率resolution

    屏幕分辩率(又称物理分辨率,Physical Size)

    屏幕分辨率为手机屏幕的固有属性。

    方法①:adb shell wm size 

    Physical size: 1080x1920  // 小米6的屏幕分辨率

    宽高比

    手机 宽 x 高(px) 宽高比
    iPhone 12 Pro Max 1284 x 2778 9:19
    iPhone 11 828 x 1792 9:19
    iPhone 8 (8, 7, 6S, 6) 750 x 1334 9:16
    小米10 1080 x 2340 9:19
    小米6 1080 x 1920 9:16
    红米4 720 x 1280 9:16

    获取小米10相关参数

    ① 通过java代码获取

    import android.util.DisplayMetrics;
    
    DisplayMetrics metrics = getResources().getDisplayMetrics(); 

    注:左边130为导航栏,右边90为挖孔摄像头 

    ② 通过AIDA64工具获取:

    显示分辩率(显卡输出分辨率) 

    显卡分辩率的上限为屏幕分辨率。

    游戏常常通过降低显示分辨率来提升渲染速度。例如:渲染场景时输出720x1280,然后拉伸显示在1080x1920的手机屏幕上

    adb shell wm size 540x960  // 将小米的显示分辨率设置为540x960

    adb shell wm size  // 如果被修改过,分辨率如下

    Physical size: 1080x1920
    Override size: 540x960

    adb shell wm size reset  // 将小米的显示分辨率重置为缺省(即:屏幕分辨率)

    Android应用图标

    APK包res目录中包含各种dpi下的图标资源(里面包括游戏安装后的App图标Icon.png)

    IOS应用图标

    注:Assets.car文件使用AssetCatalogTinkerer来打开 

    UE4下Android图标配置

    UE4下iOS图标配置

    参考

    Android 屏幕适配:最全面的解决方案

    屏幕像素密度(PPI)查询

    屏幕尺寸大全

  • 相关阅读:
    SCCM 2007 部署软件更新
    WPF开发工具
    体验Windows Live Writer写Blog
    图像的灰度和黑白处理算法
    很有用的Sql总结转载
    WPF 体验导航窗口
    WPF 一周练
    WPF 图表
    也说Linq 分组
    WPF 体验对话框调用
  • 原文地址:https://www.cnblogs.com/kekec/p/13522783.html
Copyright © 2020-2023  润新知