3

有谁知道是否支持中文拼音?我在这里得到了正确的中文拼音结果(请参阅“显示罗马化”链接)。

谢谢你。

4

3 回答 3

2

我不知道 Google AJAX 语言 API 是否支持转换为拼音,但如果不支持,那么在您的 on 上进行可通过的转换实际上并不太难。(从拼音到汉字(字符)的反向转换要复杂得多,因为拼音非常有损。)

要自己进行转换,请获取Unihan.zip,这是Unihan 数据库的可下载版本。您真正关心的文件是 Unihan_Readings.txt。它还包含一堆你不关心的东西,而且它的存储方式也非常低效,所以不要太担心文件太大。您应该提取您关心的内容并以更有效的方式存储它。

在其中,您会发现制表符分隔的行,如下所示:

U+597D  kCantonese      hou2 hou3
U+597D  kDefinition     good, excellent, fine; well
U+597D  kHangul         호
U+597D  kHanyuPinlu     hao3(6060) hao1(142) hao4(115)
U+597D  kHanyuPinyin    21028.010:hǎo,hào
U+597D  kJapaneseKun    KONOMU SUKU YOI
U+597D  kJapaneseOn     KOU
U+597D  kKorean         HO
U+597D  kMandarin       HAO3 HAO4
U+597D  kTang           *xɑ̀u *xɑ̌u
U+597D  kVietnamese     háo
U+597D  kXHC1983        0445.030:hǎo 0448.030:hào

左列(“U+597D”)是 unicode 码位,中间列是属性名称,右列是属性值。您可以提取 kHanyuPinyin 属性或 kMandarin 属性。它们对基本相同的信息进行编码 - 只需使用您更容易处理的格式即可。(hǎo == HAO3,hào == HAO4,如果这不明显)

您会注意到,对于某些字符(例如我在此处选择的示例)有多种发音。这是一个棘手的问题。根据您想要的精度,您可能只需使用列出的第一个罗马字就可以逃脱,因为它们是按频率递减的顺序排列的。(实际上,这是汉语拼音与汉语普通话有点不同的地方之一——它实际上有多个发音列表,每个都按频率排序。)

于 2010-01-08T19:05:08.880 回答
1

您可以通过将中文翻译成中文来欺骗 API 为您提供拼音。示例链接

于 2010-09-15T13:30:03.190 回答
0

谷歌翻译包括“显示/隐藏罗马化”,这比 UNIHAN 更好,原因有二。首先,已知单词以适当的方式在逻辑上组合在一起(至少它试图这样做)。其次,汉字有不止一种可能的读音。弄清楚哪个拼音音译是正确的,这不是一个小问题。这就是翻译引擎所做的。

于 2010-04-03T18:11:07.430 回答