谁能告诉我大多数Android设备上的捆绑字体是什么,特别是网页?
就像Windows has their bundled fonts或Mac font lists一样,大多数安卓手机和平板电脑都有哪些字体?任何人都能指出网上的列表吗?
我正在制作网页,并希望将我的CSS从使用较新的字体优雅地降级到只使用简单的"sans-serif“和"serif”字体家族。谢谢。
发布于 2014-03-21 18:03:10
在Grstmo's answer上扩展
system_fonts.xml定义了从字体系列到实际字体文件的映射。因此,让我们尝试一下这些:
<div style="font-family: sans-serif; font-style: normal">Regular</div>
<div style="font-family: sans-serif; font-style: italic">Italic</div>
<div style="font-family: sans-serif; font-weight: bold">Bold</div>
<div style="font-family: sans-serif; font-weight: bold; font-style: italic">Bold-italic</div>
<div style="font-family: sans-serif-light; font-style: normal">Light</div>
<div style="font-family: sans-serif-light; font-style: italic">Light-italic</div>
<div style="font-family: sans-serif-thin; font-style: normal">Thin</div>
<div style="font-family: sans-serif-thin; font-style: italic">Thin-italic</div>
<div style="font-family: sans-serif-condensed; font-style: normal">Condensed regular</div>
<div style="font-family: sans-serif-condensed; font-style: italic">Condensed italic</div>
<div style="font-family: sans-serif-condensed; font-weight: bold">Condensed bold</div>
<div style="font-family: sans-serif-condensed; font-weight: bold; font-style: italic">Condensed bold-italic</div>
<div style="font-family: serif; font-style: normal">Serif Regular</div>
<div style="font-family: serif; font-style: italic">Serif Italic</div>
<div style="font-family: serif; font-weight: bold">Serif Bold</div>
<div style="font-family: serif; font-weight: bold; font-style: italic">Serif Bold-italic</div>
<!-- "Droid Sans" actually gives you Roboto. -->
<div style="font-family: "Droid Sans"; font-style: normal">Droid Sans Regular</div>
<div style="font-family: "Droid Sans"; font-weight: bold">Droid Sans Bold</div>
<div style="font-family: monospace; font-style: normal">Monospace Regular</div>http://jsfiddle.net/9z3tD/4/ =>

(在android 4.2上测试)
编辑:截图中的"Droid Sans“显然是Roboto。配置支持它,但结果是the underlying file is a simlink:DroidSans.ttf -> Roboto-Regular.ttf,DroidSans-Bold.ttf -> Roboto-Bold.ttf
编辑:我是否引用家族名称似乎并不重要(http://jsfiddle.net/9z3tD/9/呈现的是相同的名称)。CSS区分通用关键字,如serif和引用的"serif",后者指的是名称恰好是"serif“的字体;但xml配置没有区别,所以我猜在android中,这两种语法都指的是名称为”serif“的字体。但是,如果创建自定义WebView并将其配置为将通用关键字映射到其他字体(setSerifFontFamily().
然后是fallback_fonts.xml。它们没有名字;例如,你不能说font-family: "Droid Sans Fallback"。
但所有这些都被认为是尝试在其他字体中丢失的每一个字形。大概人们甚至可以使用"elegant"或"compact"的font-variant并通过设置文本lang="ja"来选择子集
然而,我根本没有看到Droid Sans回退被使用,所以可能回退在WebKit中不起作用:-(
免责声明:以上规定适用于普通安卓系统,使用普通浏览器和/或Chrome。我相信它也适用于WebView (默认配置),但还没有测试过。
理论上,制造商可能会使用其他字体,例如,我听说三星也这么做了。在实践中,screenshots on all android devices BrowserStack had所有人-包括Samsungs -在我未受过训练的眼睛里看起来都是Roboto或Droid,不同之处在于screenshots on all android devices BrowserStack had版本……然而,这里是Galaxy S3 caught not aliasing Georgia to serif,所以有些地方不同。
火狐就是一个很好的例子--他们先是切换到Open Sans and Charis SIL Compact,然后是replaced Open Sans with Clear Sans。
完整的配置是在libpref/init/all.js中进行的,并且依赖于语言。
据我所知,火狐忽略了system_fonts.xml的别名,例如Georgia会导致sans字体。
OTOH,旧版本(测试30,34) allowed you to refer to system fonts by name, even to Droid Sans Fallback,但是这个doesn't work on FF 36, 37 (这两个结果是针对http://codepen.io/cben/pen/VYgPEE的,使用AdobeBlank意味着当你看到字符时,使用的是该字体)。
另请参阅relevant answer有关应用程序可用字体的信息。
发布于 2011-07-25 08:29:19
这里已经回答了这个问题:How to retrieve a list of available/installed fonts in android?只有3种字体可以作为Android的一部分: normal (Droid Sans),serif (Droid Serif)和monospace (Droid Sans Mono)。
发布于 2013-05-23 23:53:17
在Android 4.1中,您可以使用以下代码:
字体系列: sans-serif-light;
https://stackoverflow.com/questions/6809944
复制相似问题