我正在尝试将罗马英语单词音译为乌尔都语单词。很像这样website tool.我正在使用 icu4j音译者。输出音译有点出乎意料,例如
input : "namaz"
output : "نَمَز"
expected output : "نماز"
English Translation : "Prayer"
下面是我获取实例的id。
String id = "Eng-ur; NFD;";
有谁知道我的 id String 哪里有问题...???
最佳答案
ICU 的规则框架不适用于发音不规则的源语言。遗憾的是,英语特别难发音。
音译是指用目标语言模仿源语言的发音。这包括两部分: (a) 将输入转换为指示发音的中间表示; (b) 将发音转换为最终输出。
对于 English-to-Urdu,基于规则的 ICU 框架永远不会为 (a) 提供良好的结果,但它很可能是用于 (b) 的良好系统。我建议通过文本到语音系统运行你的英语字符串,或者至少在一个非常大的发音词典中查找输入。这将为您提供 International Phonetic Alphabet 中的发音.有了发音后,ICU 应该可以很好地生成乌尔都语。
现在,ICU 还没有将国际音标转换为乌尔都语的规则。作为Unicode音译规则的维护者,我觉得这应该很容易实现;当我有时间的时候,我会很乐意这样做(但欢迎任何人发送补丁!)请在 http://unicode.org/cldr/trac/newticket 提交错误如果你想走这条路。
关于java - icu4j音译英语到乌尔都语,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40606099/