2

ローマ字の英単語をウルドゥー語に音訳しようとしています。このWebサイトツールによく似ています。icu4j トランスリテレータを使用しています。出力の翻字は少し予想外です。

入力:「ナマズ」

出力:「よろしく」

期待される出力: "نماز"

日本語訳:「祈り」

以下は、インスタンスを取得するための私のIDです。

String id = "Eng-ur; NFD;";

私のID文字列のどこに問題があるか知っている人はいますか...???

4

2 に答える 2

4

ICU のルール フレームワークは、発音が不規則なソース言語ではうまく機能しません。悲しいことに、英語は特に発音が難しいです。

文字変換とは、ソース言語の発音をターゲット言語でエミュレートすることを意味します。これは次の 2 つの部分で構成されます。(a) 入力を発音を示す中間表現に変換します。(b) 発音を最終出力に変換する。

英語からウルドゥー語では、ルールベースの ICU フレームワークは (a) に対しては決して良い結果をもたらしませんが、(b) に対しては良いシステムになる可能性が非常に高くなります。英語の文字列をテキスト読み上げシステムで実行するか、少なくとも非常に大きな発音辞書で入力を調べることをお勧めします。これにより、国際音声記号での発音が得られます。発音がわかれば、ICU はウルドゥー語を生成するのに十分に機能するはずです。

現在、ICU には、国際音声記号をウルドゥー語に変換するための規則がまだありません。Unicode の音訳規則の管理者として、これは非常に簡単に実装できるはずだと思います。時間があれば喜んでそれを行います (しかし、誰でもパッチを送ってくれます!)この方法で行きたい場合は、http: //unicode.org/cldr/trac/newticketでバグを報告してください。

于 2016-11-24T14:23:25.177 に答える