如何转换 SP 至 EM?
How to convert SP to EM?
在API21中引入了setLetterSpacing(float)
。问题是,参数以 em 为单位。与我合作过的许多应用程序图形设计师都使用 sp 来衡量他们的字母间距。所以如果我得到
Letter Spacing: 1.6sp
我通常最终会尝试几个浮点数,它们会产生与设计者的结果非常相似的结果。简而言之,它不是像素完美的。
您知道从 SP 转换为 EM 的更好方法吗?谢谢!
我认为 sp 和 em 有不同的用途 -- sp 用于绝对调整文本大小,而 em 用于相对调整文本大小。我的猜测是 em 字母间距是文本大小的倍数,所以如果您知道文本大小和所需的间距,则等式将为 spacing_em = spacing_sp / text_size_sp
.
这只是一个猜测,所以请测试一下,如果错误我会删除答案。
基于android documentation about dimension SP behaved like DP but for font size. Converting may result in inconsistency based on the screen size and resolution, but here the formula I found:
sp * 0.0624 = em
正如 Frandall 已经提供的答案,您可以使用下面的简单 sp-em 转换器 link
https://chrisdavies.github.io/sp-to-em/
sp转em的公式为:sp * 0.0624 = em
轻微膨胀的典型值约为 0.05
在API21中引入了setLetterSpacing(float)
。问题是,参数以 em 为单位。与我合作过的许多应用程序图形设计师都使用 sp 来衡量他们的字母间距。所以如果我得到
Letter Spacing: 1.6sp
我通常最终会尝试几个浮点数,它们会产生与设计者的结果非常相似的结果。简而言之,它不是像素完美的。
您知道从 SP 转换为 EM 的更好方法吗?谢谢!
我认为 sp 和 em 有不同的用途 -- sp 用于绝对调整文本大小,而 em 用于相对调整文本大小。我的猜测是 em 字母间距是文本大小的倍数,所以如果您知道文本大小和所需的间距,则等式将为 spacing_em = spacing_sp / text_size_sp
.
这只是一个猜测,所以请测试一下,如果错误我会删除答案。
基于android documentation about dimension SP behaved like DP but for font size. Converting may result in inconsistency based on the screen size and resolution, but here the formula I found:
sp * 0.0624 = em
正如 Frandall 已经提供的答案,您可以使用下面的简单 sp-em 转换器 link
https://chrisdavies.github.io/sp-to-em/
sp转em的公式为:sp * 0.0624 = em
轻微膨胀的典型值约为 0.05