快速提问:我可以在 Android 应用程序中使用缅甸语吗?我想这里更大的问题是关于 unicode,但我不知道该问什么。
5 回答
从Android 4.3 开始,您可以在应用程序中使用缅甸语。缅甸unicode没有更多问题。但是,Android 默认仍不支持缅甸语。
您可以在 Android 4.3 中正确使用 Zawgyi 或 Unicode
您可以使用 ttf 字体与@Ye Lin Aung 提及
tv_mm3 = (TextView) findViewById(R.id.tv_mm3);
Typeface tf_mm3 = Typeface.createFromAsset(getAssets(), "fonts/mm3.ttf");
tv_mm3.setTypeface(tf_mm3);
对于 web,ttf 字体嵌入不起作用。您需要将 svg 用于 Zawgyi。但是,unicode ttf 字体在 android 4.3 中无法使用。转换 svg 字体后无法渲染。因此,现在可以使用带有 unicode 的默认 webview。
对于 WebView ,您需要将 zawgyi svg 字体放在资产文件夹下。
@font-face {
font-family:'Zawgyi-One';
src:url('file:///android_asset/fonts/zawgyi.svg');
}
如果你想在 webview 中使用 unicode,你可以从https://github.com/pwnall/chromeview使用 chromeview
希望,我的回答对你有用。
更新:: Android 4.4 支持缅甸 unicode 和 zawgyi 在应用程序和 webview 上显示良好。
免责声明:我是来自 Myanamr 的开发人员。
是的。您可以,但尚未完全支持,恕我直言。您可以使用嵌入字体typeface
。你必须先把你想要的字体放在assets
文件夹中。像这样的东西会起作用。
tv_mm3 = (TextView) findViewById(R.id.tv_mm3);
Typeface tf_mm3 = Typeface.createFromAsset(getAssets(), "fonts/mm3.ttf");
tv_mm3.setTypeface(tf_mm3);
稍微偏离主题,但我建议您尝试使用一些字体(无论是否为 Unicode 字体)。渲染将不正确取决于 Android API 版本。
在最新的 API 版本4.3
中,带有 Unicode 字体的缅甸文本在TextView
. 我认为这对于大多数应用程序来说已经足够了。我的建议是使用 Myanmar3 Unicode 字体。
在这里,您可以找到带有本地化代码的大量支持语言列表:
下面是一个 Android 教程,用于在 android 应用程序中支持不同的语言......
http://developer.android.com/training/basics/supporting-devices/languages.html
希望这会帮助你。
语言支持分为两个阶段:
设备需要能够打印语言的字符。Android 具有完整的 UTF-8 支持。这意味着您可以在屏幕上以任何语言打印字符串。但是:并非系统支持的所有字符都包含在默认字体中。例如泰米尔语字体可用,僧伽罗语字体不可用。
Android 官方语言支持允许您将手机语言环境设置为可用的任何语言。可用语言环境列表链接在另一个答案中。在该列表中意味着:用户可以设置应用程序和整个系统的语言。并且您可以使用文件夹
res/values-de
来显示特定于语言环境的字符串。
要测试 1.,您只需打开手机的浏览器并查看该语言的网站。检查字符是否显示,或者您是否只看到 [] 或什么也没有。
要测试 2.,您需要查看 android 源代码或一些官方文档。
但是,介于两者之间:
如果您看到字符但它仍然不是官方语言环境,您可以执行以下操作:
无论如何为您的语言添加资源:res/values-whatever
并允许用户在应用程序的设置中选择自定义区域设置。如果用户选择了whatever
您可以在执行任何其他操作之前在每个活动中设置区域设置。
Android 4.4+ 完全支持缅甸,包括字体。http://viss.wordpress.com/2013/11/16/the-state-of-burmese-unicode/上的信息性文章