Android是否允许用户提供自己的字体?

时间:2016-06-20 17:06:59

标签: android fonts

我创建了一个包含自定义字体(即Google字体)的Android应用。我通过在构建时将它们添加到APK中来包含这些内容。但是,我想允许用户在运行时提供自己的TTF文件,以便为我的应用程序增加更大的灵活性。这可能吗?如果是这样,我该怎么做?

1 个答案:

答案 0 :(得分:1)

如果您的文本由Java代码呈现,use Typeface.createFromFile()而不是您当前使用的任何内容(例如,Typeface.createFromAsset())。这仅适用于您可以访问的文件系统上的文件。如果您对该字体Uri(例如,来自ACTION_OPEN_DOCUMENT),则需要制作该字体文件的本地副本(例如,在internal storage上)。

如果您的文本由WebView呈现,您应该能够添加指向文件系统上的字体的CSS规则,但我没有尝试过。 CSS甚至有可能像你从content://那样使用Uri ACTION_OPEN_DOCUMENT,但我怀疑这会有效。