为什么旁遮普语(印度语)在某些智能设备上显示为盒子?

ive*_*ngh 6 html xcode fonts android

我发布了一个名为的应用程序Gurbani Ujagar.它看起来像在一些智能手机做工精细Samsung Galaxy S3,但其他手机,如Galaxy Nexus,Galaxy S和一些药片,字/字符似乎是为方框或随机标点符号.我有超过1000个正在查看的HTML文件WebView.

我不知道如何解决这个问题所以所有手机上的文字都显示完全相同.我已经查了一些其他Punjabi的应用程序Galaxy NexusGalaxy S,即Dhur Ki Bani(这似乎罚款),但是Gurbani Ujagar应用程序显示为框.我不知道为什么会这样.我尝试在HTML文件中编辑字体.

在我开始编辑之前,文本确实出现在未显示的手机上,但某些文字仍然呈现错误.

手动编辑超过1000页将是很多工作.HTML(非源代码)文件位于我的assets文件夹中.是否可以使用Typeface?编辑所有HTML文件?好像我可以一次编辑所有这些,Xcode但我不知道为什么.

任何帮助,将不胜感激.以下是我的代码示例:

您还可以在此处查看HTML文件.

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");        
   }
}
Run Code Online (Sandbox Code Playgroud)

Gre*_*reg 3

如果您使用的字体没有这些字符的字形(该字体没有这些字母),则字符将显示为框。

有些手机比其他手机提供更多的字体,有些手机可能比其他手机拥有更完整和更新的字体版本,这意味着某些手机将具有您选择的字体,并且该字体将具有您正在使用的字符,而其他版本的手机将具有您选择的字体,并且该字体将具有您正在使用的字符。相同的字体在不同的手机或 Android 版本上可能不那么完整,并且不会包含您使用的字符,因此它们将在这些手机上显示为方框。

如果您想保证您的应用程序能够在所有手机上运行并显示所有文本,请在Google WebfontsFont Squirrel上查找具有允许嵌入到应用程序中的许可证的免费字体,然后将该自定义字体与您的应用程序一起提供并使用它在你的 HTML 中使用 CSS @font-face