比如,我想在本机脚本中显示10种语言的列表,如果手机不支持该字体,它将回退到英文脚本.有什么方法可以检测特定设备支持哪些字体?换句话说,我只想检查"旁遮普"是否可以显示为"ਪੰਜਾਬੀ"
据此,没有直接的方法可以做你想做的事。该答案中提出了一种方法来比较绘制的字形,但没有编程的、简单的方法来做到这一点。
另一种方法是查看预安装字体支持哪些语言。从 Froyo 开始,Android 上的标准字体是 Roboto 和 Noto——Roboto 表示“类似英语”的语言字符,Noto 表示其他所有字符。您可以在此处找到 Roboto 支持的角色的完整列表。然后是Noto,它是专门为防止字符无法显示时出现的奇怪的块状“豆腐”字符而设计的。您可以在此处找到支持的 Noto 语言列表。据说每种语言都至少有基本的 Noto 字体支持,并且能够在自定义安装时支持更复杂的字体(衬线等)。这是了解每种语言类型支持哪种字体的有用指南。
据此,除了“类似英文”的Roboto之外,默认系统上安装的主要Noto字体是NotoSerif-Regular。您可以通过自己system_fonts.xml查看那里安装的内容来确认这一点。另一种多语言字体称为Droid Sans,这里是它支持的语言列表。
| 归档时间: |
|
| 查看次数: |
2440 次 |
| 最近记录: |