【问题标题】:Android WebView to load website with TextKit FontsAndroid WebView 使用 TextKit 字体加载网站
【发布时间】:2013-10-18 12:37:39
【问题描述】:

我使用 Android WebView 开发了一个 Web 应用程序。 它应该加载我使用 Typekit 字体的网站。 问题是我的 Web 应用程序无法使用实际字体打开站点,但是 Google Chrome 或 Android 默认浏览器能够成功地做到这一点。

是不是 Android WebView 不支持 TextKit 字体? 有没有办法让 Android WebView 使用 TypeKit 字体加载网站?

提前致谢

提交

【问题讨论】:

  • 嘿,你有要用于 webview 的字体文件吗,我是说 .ttf 文件?
  • typeKit 字体是动态加载的特殊字体。它们不是 .ttf 格式,而是 Android 无法识别的其他格式。

标签: android fonts webview typekit


【解决方案1】:

这样做..

First pust your font file(.ttf) in assest folder.
Crate one css file in assest folder like(weblayout.css)

weblayout.css:
-------------
@font-face { 
font-family: 'customfont'; 
src: url('file:///android_asset/fonts/Helvetica_LT_55_Roman_0.ttf'); /* but this does */
}

body {
font-family: 'customfont';
}


And load webview_content in webview like this:

    StringBuilder sb = new StringBuilder();
                                    sb.append("<HTML><HEAD><link rel=\"stylesheet\" type=\"text/css\" href=\"weblayout.css\" /></HEAD><body>");
                                    String str = YOUR_WEBVIEW_CONTENT_STRING;
                                    str = str.replaceAll("<iframe width=\"[0-9]*", "<iframe width=\"100\\%");
                                    str = str.replaceAll("<img[\\w]*", "<img height=\"auto\" style=\"max-width:100\\%\";");
                                    sb.append(str);
                                    sb.append("</body></HTML>");
                                    webFull.loadDataWithBaseURL("file:///android_asset/", sb.toString(), "text/html", "utf-8", null);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-02-21
    • 1970-01-01
    • 2016-02-01
    • 1970-01-01
    • 1970-01-01
    • 2016-02-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多