在Android中,如何将字体大小的Pts转换为sp或dp?

在Android中,如何将字体大小的Pts转换为sp或dp?,android,scale,font-size,pts,Android,Scale,Font Size,Pts,我正在开发一个应用程序,其中我有一些字体,我必须给出特定的大小 我有一份文件,用于指导我所有分辨率的字体大小,但文件中的字体单位是pts。要在XML中工作,我必须在SP或DP中使用字体大小 我看到很少有计算器喜欢对不同的单位转换,但似乎它们转换不正确 2560x1440:XXX-HDPI:44pts==?sp或dp 1920x1080:XX-HDPI:33分==?sp或dp 1280x720/960x720:X-HDPI:22pts==?sp或dp 640x480:X-HDPI:15pts==?

我正在开发一个应用程序,其中我有一些字体,我必须给出特定的大小

我有一份文件,用于指导我所有分辨率的字体大小,但文件中的字体单位是pts。要在XML中工作,我必须在SP或DP中使用字体大小

我看到很少有计算器喜欢对不同的单位转换,但似乎它们转换不正确

2560x1440:XXX-HDPI:44pts==?sp或dp

1920x1080:XX-HDPI:33分==?sp或dp

1280x720/960x720:X-HDPI:22pts==?sp或dp

640x480:X-HDPI:15pts==?sp或dp

470x320/426x320:MDPI:10pts==?sp或dp

请用一些公式或解决方案来帮助我,这样我们才能继续前进。

这可能会对你有所帮助

public float pixelToDip(Context paramContext, int paramInt)
{
    Resources localResources = paramContext.getResources();
    return TypedValue.applyDimension(0, paramInt, localResources.getDisplayMetrics());
}


public int pxToDp(int paramInt, Context paramContext)
{
    DisplayMetrics localDisplayMetrics = paramContext.getResources().getDisplayMetrics();
    return Math.round(paramInt / (localDisplayMetrics.xdpi / 160.0F));
}