Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/google-sheets/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 使用自定义字体的应用程序开发本地化_Android_Ios_Facebook_Fonts - Fatal编程技术网

Android 使用自定义字体的应用程序开发本地化

Android 使用自定义字体的应用程序开发本地化,android,ios,facebook,fonts,Android,Ios,Facebook,Fonts,我想使用自定义字体将iOS和Android应用程序本地化为超过25种不同的语言。问题是没有新字体覆盖这种类型的背景。在应用程序开发中,目前针对这个问题的最佳做法是什么 我只提出了以下两种解决方案,但我不确定它们是否可行或是一个好主意 1.)聘请字体设计师创建一个至少3种不同权重(常规、粗体、斜体)的大型自定义字体。但考虑到一些单重简体中文字体的应用许可证仅为5k,这可能会非常昂贵 2.)由于使用拉丁字符(例如Proxima Nova),使用涵盖约10种语言的自定义字体,然后使用外观类似的字体来显

我想使用自定义字体将iOS和Android应用程序本地化为超过25种不同的语言。问题是没有新字体覆盖这种类型的背景。在应用程序开发中,目前针对这个问题的最佳做法是什么

我只提出了以下两种解决方案,但我不确定它们是否可行或是一个好主意

1.)聘请字体设计师创建一个至少3种不同权重(常规、粗体、斜体)的大型自定义字体。但考虑到一些单重简体中文字体的应用许可证仅为5k,这可能会非常昂贵

2.)由于使用拉丁字符(例如Proxima Nova),使用涵盖约10种语言的自定义字体,然后使用外观类似的字体来显示不受支持的语言

在我看来,当前的最佳实践是使用一种自定义字体,它涵盖了大量基于拉丁语的语言,所有不受支持的语言都会回退到设备字体。但我也遇到过一些问题,尤其是从Facebook connect本地化动态第三方数据。如果我在美国,而我在中国的朋友的用户名中有汉字,则自定义字体会输出小的方形字形,而不会返回设备的汉字集

在任何情况下,这两种解决方案都会为应用程序增加相当大的文件大小,这本身可能是一个交易破坏者。对于解决方案2,我还考虑使用静态图像,而不是嵌入其他字体,但这也会在本地化动态第三方数据方面带来问题,如果应用程序需要更新,则会产生大量工作


如有任何建议,将不胜感激。谢谢。

当前的最佳做法是使用设备中嵌入的字体。您不喜欢设备字体的外观吗?为什么要自定义字体?以科幻游戏为例,使用自定义的、未来风格的字体比使用设备字体更有意义。它有助于让游戏体验更加内聚,减少泛化。这只是一个例子,但我认为在应用程序开发中使用自定义字体有很多很好的理由。。但你有一个:)问题是你自己把事情复杂化了吗。我是一名Android开发人员,所以我无法与iOS对话,但在Android中,自4.0以来,该系统在语言字体方面的覆盖率相当高。当您使用它们时,您可以混合字符集,并让系统为您选择字体。你自己做这件事非常复杂,很少有人会这么做。我创建的应用程序支持70多种语言的自定义字体,我这样做的方式是在应用程序中嵌入多个自定义字体,但如果你在同一个文本视图中有中文和波斯语,这将崩溃。您可以检查每个字符,确定要使用的字体集,并使用跨距更改单个字符的字体。。但这很难。嗯,我想你质疑我的需要是对的。我试图找到平衡,我明白这有点主观。在嵌入这么多自定义字体的过程中,您对下载中添加的文件大小有何感受?听起来,解决第三方动态数据问题的最佳方法就是简单地依赖设备字体。可以肯定地说,我的解决方案1在开发社区中非常罕见,而解决方案2更像是一种最佳实践吗?非常感谢你的意见。