CSS样式的自定义字体字体

时间:2019-05-14 09:28:46

标签: android html css xml

我的Android应用程序中有一个WebView来显示文本内容。 CSS属性是使用以下代码实现的:

public static final String CSS_PROPERTIES = "<style>body{width:100%;margin:0;}
  img {max-width:100%;height:auto;} iframe{width:100%;}</style>";

我试图将代码更改为以下语法,但无济于事:

public static final String CSS_PROPERTIES = "<style type='text/css'>@font-face { font-family: nafees; src: url('file:///android_asset/fonts/nafees.ttf'); } 
  body p {font-family: nafees; width:100%;margin:0;}
  img {max-width:100%;height:auto;} iframe{width:100%;}</style>";

我希望将字体应用于webView。

然后将此CSS_PROPERTIES字符串实现为:

contentText = new StringBuilder().append(AppConstant.CSS_PROPERTIES)
.append(contentText).toString();

然后

webEngine.loadHtml(contentText);

1 个答案:

答案 0 :(得分:0)

请尝试以下代码。

webView = findViewById(R.id.webview);

        String pish = "<html><head><style type=\"text/css\">@font-face {font-family: sanfranciscotext_bold;src: url(\"file:///android_asset/font/sanfranciscotext_bold.otf\")}body {font-family: sanfranciscotext_bold;font-size: medium;text-align: justify;}</style></head><body>";
        String pas = "</body></html>";
        String myHtmlString = pish + "Hello This is test for Font" + pas;
        webView.loadDataWithBaseURL(null,myHtmlString, "text/html", "UTF-8", null);

以这种方式在资源文件夹中添加字体资源。 enter image description here

输出类似:

enter image description here