android - 如何将自定义字体设置为在 Android 中加载了 WebView 的 html?
问题描述
我正在尝试将自定义字体加载到 webview 中。我知道有几种解决方案,但对我不起作用。
我正在使用以下方法将数据加载到 webview 中:
webview.loadDataWithBaseURL("file:///android_asset/", setHTML(it), "text/html", "utf-8", null)
private fun setHTML(text: String): String {
return "<html><style>" +
"@font-face {" +
"font-family: 'Montserrat';" +
"src: url('fonts/Montserrat-Regular.ttf);" +
"}" +
"body {" +
"padding:0px;"+
"margin:0px;"+
"font-family: 'Montserrat', sans-serif !important;" +
"}" +
"a {" +
"text-decoration:none;" +
"}" +
"code {" +
"font-family: Courier, Helvetica !important;" +
"}" +
"</style><body>${text}ffff</body></html>"
}
我的文字是<b> test </b>
这是我想使用的字体:
有人知道我在做什么错吗?
解决方案
试试这个解决方案:
String text = "<html><head><style type=\"text/css\">@font-face {font-family: MyFont;src: url(\"file:///android_asset/font/Montserrat-Regular.ttf\")}body {font-family: MyFont;font-size: medium;text-align: justify;}</style></head><body>";
String pas = "</body></html>";
String myHtmlString = text+ YourTxext + pas;
wv.loadDataWithBaseURL(null,myHtmlString, "text/html", "UTF-8", null);
推荐阅读
- javascript - 跟随光标JavaScript的眼睛不起作用
- javascript - 使用 jQuery 获取调整大小时的尺寸变化
- html - 仅具有某些属性的节点的 XPath?
- javascript - 使用 google chrome Javascript 获取我的正确位置时出现问题
- scala - 如何创建 WindowSpec 以在当前行之前和之后计算每种类型的行数?
- asp.net - SMS应用程序不发送特殊字符asp.net mvc
- reactjs - 如何实现 Proptypes
- javascript - 如何仅使用 Jquery 对 div 列表进行排序?
- django - 使用自签名证书为 SSL 重新配置 Nginx 时出现问题
- c# - Azure 持久 HTTPStart 方法中的单元测试 (Rhino) DBUp