无法在WebView中使用自定义字体

时间:2014-07-04 08:03:01

标签: android css fonts webview android-webview

我的应用程序中有一个webview,其中正文需要使用“Times New Roman”字体进行渲染。首先,我已将.ttf文件放在我的Assets文件夹中。

assets

我已将style.css文件修改为以下内容:

@font-face {
    font-family: "Times New Roman";
    src: url("Times-New-Roman.ttf");
}

#body{
    font-family: "Times New Roman",Arial,sans-serif;
    font-weight: normal;
    font-size: 8px;
}

我创建了这样的WebView:

WebView webView = new WebView(activity.getApplicationContext());
String child = "<html><head><link rel=\"stylesheet\" type=\"text/css\" href=\"style.css\"><body>Test</body></html>";
webView.loadDataWithBaseURL("file:///android_asset/", child, "text/html", "UTF-8", null);
return webView;

但是当WebView以默认的Android字体而不是Times New Roman呈现时。我不知道它是否重要,但我在我的MacBook上复制了my / Library / Fonts文件夹的字体,只是用“ - ”空格的instaid重命名。

1 个答案:

答案 0 :(得分:0)

我明白了。通过删除CSS中的#之前的身体,我得到了它的工作。如果知道HTML比我更好的人看到了这个,请你说明为什么会这样做?