我有一个包含阿拉伯语内容的 webview,我已尝试使用自定义字体(阿拉伯语字体)更改默认字体,如所述 here但没有成功。那我该怎么做呢?
我们将不胜感激。
编辑: 这是我的代码:
// Prepare html page
String fontFamily = "@font-face {"
+ "font-family: 'ARABTYPE';"
+ "src: url('file:///android_asset/fonts/ARABTYPE.TTF');} "
+ "body {font-family: 'ARABTYPE';font-size: large;text-align: justify;}";
String mHTMLHeader = "<html><head><style type=\"text/css\">\n"
+ fontFamily + "\n</style></head><body><div dir='rtl'>";
String arabicText = "السلام عليكم ورحمة الله";
String mHTMLFooter = "</div></body></html>";
String mHtml = mHTMLHeader + "<div dir='rtl'>" + arabicText
+ "</div>" + mHTMLFooter;
WebView mBrowser;
mBrowser = (WebView) findViewById(R.id.myWebView);
mBrowser.getSettings().setSupportZoom(true);
mBrowser.getSettings().setBuiltInZoomControls(true);
mBrowser.getSettings().setJavaScriptEnabled(true);
mBrowser.getSettings().setDisplayZoomControls(false);
mBrowser.loadDataWithBaseURL("file:///android_asset/", mHtml, "text/html", "UTF-8", "");
最佳答案
我在这里面临同样的问题,我正在使用一个 HTML 文件和一个使用 @font-face 标签的 CSS 文件,但我已经做了进一步的测试:
- 我用自定义西方字体尝试了相同的代码,结果成功了。
- 我将文件托管在我的 PC 上的 IIS 上,并从桌面版 Chrome 访问它,它成功加载了自定义阿拉伯语字体,另一方面,Android Chrome 无法加载自定义阿拉伯语字体( WebView 和互联网应用程序也是如此) .
问候。
关于java - android:带有阿拉伯语内容的 webview 不加载自定义字体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15631713/