注意:我接受了一个答案,因为它很有帮助,我不希望很快就会得到另一个答案,但这个问题仍然没有得到完全回答,所以我可以给予任何人奖励。我想我正在寻找的是一种流程,它决定了给定的字体是否支持给定的语言。
我正在尝试整理一组字体。我需要知道哪些字体可用于哪种语言。
我对字符集(拉丁语,西里尔语,阿拉伯语)有一个粗略的了解,但还不足以将波兰变音符号分类为事物方案。
我想有两种方法可以解决我的问题:
我没有选项2的良好资源。我正在寻找一个省力的解决方案。此时最终的字体和语言数量是未知的,我不想要O(M * N)任务。我可能不得不执行选项1作为验证步骤,但我想先减少搜索空间。
有人能告诉我如何按字符集分组语言吗?
我应该知道哪些问题?
答案 0 :(得分:0)
不错的问题,虽然它有点通用。
正如@PawełDylda所说,要求号0是将UTF-8用于所有事情。如果你已经明白这些日子是必须的,那就没事了;由于某种原因,很多人仍然没有。
另一个提示是让您的应用程序非常清楚地知道它正在显示哪种语言。例如,在HTML中,在任何地方都使用lang和dir属性。如果它不是HTML,请创建某种全局变量,告诉应用程序它正在显示语言X,首选字体是Y.您可能还需要明确区分用户界面的语言和语言。内容。 (要查看其中的示例,请转到英语维基百科,打开一个帐户,然后转到首选项并选择法语作为您的语言 - 您将看到英语文章和法语菜单。相当多的人觉得这很舒服,实施起来并不难。)
然后,您需要了解您定位的语言。如果你想要针对所有这些目标,那么它真的很棒,尽管它可能具有挑战性。
对拉丁语而言,你很可能不必太努力将语言分解成“西方”,“东欧”,“南欧”,“土耳其语”,“越南语”等组。这是在常见的Web浏览器和文字处理器,但实际上这种方法已经过时了。你可以找到一个很好的字体,涵盖德语,法语,波兰语,土耳其语,甚至越南语和非洲语言,它们使用大量的变音符号。试试SIL的Gentium和Doulos以及GNU免费字体。他们都是免费的。
理论上,阿拉伯文字也可以这么说,但显然阿拉伯语,波斯语和乌尔都语有一些不同的要求,即使它们都使用相同的书写系统。通常,您可能必须使用阿拉伯语的通用阿拉伯字体,并为乌尔都语提供不同的字体(例如,Nafees)。在这里,也可以与母语人士一起测试。
对于西里尔语,尽量使用不仅包括俄语字母,还包括乌克兰语,塞尔维亚语和哈萨克语的字体,因为使用这些语言的国家需要对它们提供良好的支持。对于西里尔语来说,这是最低限度的,但你可以通过找到一种同样支持俄罗斯其他语言的字体,如萨哈和阿布哈兹,来帮助自己和许多其他人。 GNU Free Font也可以在这里为您服务,但又一次 - 与人一起测试。
印度的语言是一个巨大的麻烦 - 那里有很多书写系统和字体。好消息是,Fedora和Ubuntu等Linux发行版包含大多数字体的字体,并且可以在其他应用程序中自由使用。 Lohit家族涵盖了印度的大部分语言;看看Meera和Rachana的Malayalam。
我对泰国,缅甸,高棉和老挝等东南亚语言知之甚少,但也尝试支持这些语言。自Windows NT 4以来,大多数操作系统都支持泰语,但对其他语言的支持非常不完整,所以假设操作系统对您没有帮助。
我的最后一个提示是查看jquery.webfonts库,以及相应的MediaWiki扩展“Universal Language Selector”(a.k.a ULS): * https://github.com/wikimedia/jquery.webfonts * https://www.mediawiki.org/wiki/Extension:UniversalLanguageSelector
它提供了便携式技术,可以轻松地将Webfonts添加到Web应用程序中。如果您没有开发Web应用程序,或者由于其他原因无法使用该库,您仍然可以使用存储库中找到的字体 - 它们涵盖了很多语言并且它们都是免费的。
(免责声明:我参与开发这些库。)
答案 1 :(得分:0)
我发现Cyberbit字体涵盖了很多语言。
Bitstream Cyberbit是专业设计的大型Unicode字体,涵盖了许多主要脚本,包括拉丁语,扩展拉丁语,希腊语,俄语,希伯来语,阿拉伯语,泰语,日语(平假名,片假名和汉字),韩语和中国汉字(象形文字)。
以下是链接:cyberbit font