webview证明没有正确显示波斯语(波斯语)/ RTL语言

时间:2014-07-21 22:24:37

标签: android webview text-justify right-justified

我需要证明webview能够显示波斯语(波斯语)/ RTL字符串。

我使用下面的代码:

    String text = "<html><body>"
                      + "<p align=\"justify\">"                
                      + getString(R.string.test1) 
                      + "</p> "
                      + "</body></html>";
            webView.loadData(text, "text/html", "utf-8");

但是webview无法显示波斯语字符 - 图片如下:

enter image description here

我要做什么?

2 个答案:

答案 0 :(得分:3)

好的,最后我发现了一个很好的方法来使用“\ n”+所有其他自定义字符串来进行对齐+。

  1. 我制作一个包含自定义字符串的HTML文件
  2. 将数据加载到WebView:

    webView.loadUrl("file:///android_asset/string.htm");
    
  3. 编辑:

    webView.loadDataWithBaseURL(null,yourString,“text / html”,“utf-8”,null);

答案 1 :(得分:2)

加载数据

webView.loadData(text, "text/html; charset=UTF-8", "utf-8"); 

默认情况下,这不支持RTL。要修复它,我使用HTML标记:

String headerText = "<html><body dir=\"rtl\"; style=\"text-align:justify;background-color:#fff3eb;\">";

结束String add:

String footerText = "</body></html>";