我们如何强制Webview仅使用TrueType(ttf)字体而不是SVG

我们在Android应用中使用自定义阿拉伯字体。 我们使用@ font-face来指定使用SVG和TrueType字体文件的字体。 默认情况下,WebView加载SVG字体,我们注意到SVG版本的字体缺少一些字符。 有什么方法可以强制Webview仅使用TrueType(ttf)字体而不是SVG。


试试这个代码:

webSettings.setFixedFontFamily("file:///android_asset/myfont.ttf");

就像这样,它完美的作品。

1 //load the fontType
private String getHtmlData(String bodyHTML) {
     String head = "<head>" +
                "<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no"> " +
                "<style type="text/css">@font-face {font-family: MyFont;src: url("file:///android_asset/fonts/myfont.TTF")}body {font-family: MyFont;font-size: medium;text-align: justify;}</style>"+
        "</head>";
     return "<html>" + head + "<body>" + bodyHTML + "</body></html>";
}

2 // load the webview content
webView.loadDataWithBaseURL(null, getHtmlData(content), "text/html", "utf-8", null);

3 // end.
链接地址: http://www.djcxy.com/p/34821.html

上一篇: How can we force Webview to use TrueType (ttf) font only instead of SVG

下一篇: How to get fonts loading cross domain in Firefox