如何检索Android中的可用/安装的字体列表?
在Java中,我会做这样的事情:
java.awt.GraphicsEnvironment ge = java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment(); Font[] fonts = ge.getAllFonts();
有没有Android的等价物?
Mark Murphy在Android开发者邮件列表上的回答:
http://developer.android.com/reference/android/graphics/Typeface.html
只有三种字体:普通(Droid Sans),衬线(Droid Serif)和等宽(Droid Sans Mono)。
尽pipeWebKit中可能还有其他字体,但WebKit之外的开发人员似乎无法访问这些字体。 🙁
唯一的其他字体是与您的应用程序绑定的任何TrueType字体。
编辑:Roboto是一个新的字体与Android 4.0进来。 您可以使用这个库项目在所有版本中使用它回到API级别4 https://github.com/mcalliph/roboto-text-view
关于实际的问题,这里是创build一个所有可用的字体安装列表的方法:
String path = "/system/fonts"; File file = new File(path); File ff[] = file.listFiles();
数组ff []将包含所有的字体文件。
Android中只有3种可用的字体; 正常(Droid Sans),衬线(Droid Serif)和等宽(Droid Sans Mono)。
应用程序可以包含自己的truetype字体,但不能安装它们供其他应用程序使用。
几个关于字体的链接:
Android包含3种基本字体,但与iOS不同的是,您可以使用任何您喜欢的字体。 您可以简单地将其embedded到您的应用程序中,而不是像苹果那样仅限于预设的字体列表(Apple不允许embedded字体)。 很方便。
请注意,这是为Android本身,但networking浏览器(包括基本预安装的Android网页浏览器)确实支持所有标准的HTML字体。