我刚刚开始在一个ICU4C程序中使用C++实现ICU转换。我特别关注中文的音译。
根据本文件的说法,这个包既支持“韩语”也支持“拉丁语”转换。作为一名汉语学生,这似乎让我感到惊讶,因为如果没有高度先进的统计技术,拉丁语转换就特别困难(我最近看到的是谷歌音译,即使没有用户的输入,它实际上也做得很好,但对于目前的项目来说,这是不可行的),更不用说没有音符的转换了。我怀疑这甚至是可能的,不诉诸事实上的外国名字借用字符,如比尔.莫瑞。这是Google在其国际领域所采取的方法,正如我们在本文中所看到的,(PDF)
无论如何,我愿意暂停怀疑,在查阅了文档和教程之后,我能够构造两个Transliterator对象(来回),并使用它们执行简单的音译。
尽管韩语-拉丁语的效果相当不错(简单数据的准确率约为80% ),但拉丁语似乎根本不起作用,返回输入的“拉丁”字符串,这与我使用在线变换样本获得的结果是一致的,也与我对中文的了解一致。我设法找到了这表,我认为这是两个源所使用的,我们可以看到这里。
{ "Latin-Han", "file", "t_Hani_Latn", "REVERSE" },
{ "Han-Latin", "file", "t_Hani_Latn", "FORWARD" },我猜想这意味着,给定一个拼音字符串,它有可能复制原作,但情况似乎并非如此。
我想我的一般问题是:这种转变是否有可能在ICU,或者除了谷歌音译之外的其他任何东西?预期的产出是多少?与此相关的是,如果这是不可能的话,是否有ICU实际支持的脚本对的列表呢?
谢谢您抽时间见我
发布于 2011-04-29 23:27:05
请注意,数据来自CLDR项目http://cldr.unicode.org。ICU支持的脚本对很多,ICU将尝试使用一个支点脚本(如汉到拉丁语到俄语),这就是为什么您可以创建像“任意拉丁语”这样的音译器。您可以尝试浏览ICU和CLDR数据集。韩语文件顶部的便条上写着,它不是往返的。
https://stackoverflow.com/questions/5838267
复制相似问题