中文字符显示为“?”在webView android

时间:2015-05-11 08:12:28

标签: android html fonts android-webview

我使用Coolreader作为epubviewer,它在Android Kitkat之前工作正常,但是当我在Lollipop中安装它时,中文字符显示为'?'。我浏览了coolreader应用程序的源代码并获得了这个页面

http://code.openhub.net/file?fid=PF-WK55Lf-fKyZHTWpimrfAIH3A&cid=O-7qUkxrhmk&s=&fp=309197&projSelected=true#L0

在行1403 to 1444' I found something related to fonts, they have hard coded 5 fonts and below they have set '"Droid Sans Fallback "中作为默认后备字体。我在我的模拟器中检查/ system / fonts在5.1中工作,发现即使有"Droid Sans Fallback",其他字体也只有这些字体出现在应用程序字体选择器中

cosmic gothic SC

comming soon

cutive mono

Dancing script

Droid sans mono

motoyalmaru

nanumgothic

noto sans myanmar

noto sans myanmar UI

noto serif

 roboto

 Roboto condensed

我在4.4.4模拟器中检查了相同的内容

Droid Naskh Shift Alt

 Droid Sans Fallback

Droid sans mono

droid serif

Motoyalmaru

NamumGothic

Padauk book

Roboto

Roboto Condensed

现在看看我的观察,在4.4.4中,我尝试了所有字体和所有字体正确加载中文字符

在5.1.0中,我尝试了所有可用的字体,但中文字符未加载任何字体,始终?

然后我从4.4.4获取了Droid Sans Fallback的副本并将其粘贴在5.1中的系统/字体中然后将droid sans后备字体显示在Coolreader的字体列表中,之前,即使它在5.1的系统/字体中出现,它没有出现在coolreader的字体列表中。然后我选择它,我可以看到中文字符。

我的问题是4.4.4所有字体都加载中文,但在5.1.0中,即使列表中有更多字体,也没有加载中文,所以它必须是导致问题的其他东西。

我厌倦了另一位名为fb阅读器的读者,它显示中文的有趣之处在于它在其字体列表Droid sans, droid serif and droid mono中有3种字体。

我几乎用酷读者创建了一个应用程序,同样的事情困扰着我,请帮助

Lollipop与epub阅读器中的中文不兼容

1 个答案:

答案 0 :(得分:1)

只需尝试将自定义字体添加到移动设备的SD卡中的IsReadOnly="False"文件夹即可。因为,coolreader库也会检测sdcard中/fonts文件夹中的字体,我在页面中读到它。同样在您的自定义应用中,只需在源代码的assets文件夹中添加/fonts(Droid Sans Fallback)中的相同字体,然后使用代码将字体(在资源文件夹中)粘贴到上面提到的{ sdcard中的{1}}文件夹。

你可以在stackoverflow本身找到代码,将files文件从assets文件夹复制并粘贴到sdcard