gpt4 book ai didi

android - 有没有办法在 StaticLayout 中退回到 Typeface.SERIF?

转载 作者:可可西里 更新时间:2023-11-01 18:49:07 34 4
gpt4 key购买 nike

我正在创建一个自定义 View 类,它使用 StaticLayout 和从 .ttf Assets 文件加载的自定义字体来显示文本。字体的基本外观是衬线字体,字体文件中的 TrueType 属性表明它是衬线字体。然而,对于字体中没有的字符,Android 会回退到无衬线字体(它看起来像 Roboto 或 Noto,具体取决于 Android 版本)。

有没有办法控制它,使 Android 布局引擎回退到衬线字体? (比如传递给 Paint#setFontFeatureSettings() 的一些魔法字符串,或者可能是一种指定用于 Paint 的字体堆栈的方法?)

任何解决方案都必须在分发应用程序时起作用,因此无法使用 Android 的系统配置文件玩游戏。另外,我知道 this question (四年后仍然没有答案),但我的问题有点不同,尽管这两个问题的解决方案很可能是相同的。

最佳答案

从 Lollipop 开始,有一个名为 FontFamily 的隐藏类和一个名为 Typeface.createFromFamilies 的隐藏方法.如果您非常小心,您可能可以通过反射或其他技巧使用这些东西,但要准备好回退到公共(public) API。

关于android - 有没有办法在 StaticLayout 中退回到 Typeface.SERIF?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38911683/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com