我发布了一款名为Gurbani Ujagar
的应用。它似乎在Samsung Galaxy S3
等智能手机上运行正常,但其他手机如Galaxy Nexus
,Galaxy S
以及某些平板电脑上的单词/字符似乎是方框或随机标点。我有超过1000个HTML文件正在使用WebView
进行查看。
我不知道如何解决这个问题所以所有手机上的文字都显示完全相同。我检查了Punjabi
和Galaxy Nexus
上的其他Galaxy S
个应用,即Dhur Ki Bani
(看似正常),但Gurbani Ujagar
应用显示为方框。我不知道为什么会这样。我尝试在HTML文件中编辑字体。
在我开始编辑之前未显示的手机上会显示文字,但有些文字仍会呈现错误。
手动编辑超过1000页将是很多工作。 HTML(非源代码)文件位于我的assets文件夹中。是否可以使用Typeface
编辑所有HTML文件?好像我可以在Xcode
中一次编辑所有这些内容,但我不确定原因。
任何帮助将不胜感激。以下是我的代码示例:
public class MainActivity extends Activity {
@SuppressLint("SetJavaScriptEnabled")
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
WebView webview = (WebView) findViewById(R.id.webView1);
webview.loadUrl("file:///android_asset/3.html");
}
}
答案 0 :(得分:3)
如果您使用的字体没有这些字符的字形(字体没有这些字母),则字符显示为方框。
有些手机提供的字体比其他手机更多,有些手机可能拥有比其他手机更完整和更新版本的字体,这意味着某些手机会选择您选择的字体,而该字体将包含您正在使用的字体,而其他不同手机或Android版本上相同字体的版本可能不完整,并且没有您使用的字符,因此它们将在这些手机上显示为方框。
如果您想保证您的应用能够正常运行并在所有手机上显示所有文字,请在Google Webfonts或Font Squirrel上找到允许嵌入应用的许可证中的免费字体,然后发货自定义字体与您的应用一起使用并在您的HTML中使用CSS @font-face
。