IMEコンポーネントを使用して、ふりがなから漢字/漢字から読みがなを取得すると、IMEのバージョンにより結果が異なる
対象製品
InputMan for Windows Forms 7.0J
詳細
IMEコンポーネントのGetConversionListやGetReverseConversionListメソッドを使用して、ふりがなから漢字あるいは漢字から読みがなのリストを取得する場合、IMEのバージョンにより結果が異なります。
例えば、「空」という漢字の読みがなリストを取得する際、次のような結果となります。
【再現コード】
[Visual Basic]
Dim sl As String() = GrapeCity.Win.Editors.GcIme.GetReverseConversionList("空")
' 読みがなリストをデバッグウィンドウに表示します。
For Each s As String In sl
System.Diagnostics.Debug.WriteLine(s)
Next
[C#]
String[] sl = GrapeCity.Win.Editors.Ime.GcIme.GetReverseConversionList("空");
// 読みがなリストをデバッグウィンドウに表示します。
foreach(string s in sl)
{
System.Diagnostics.Debug.WriteLine(s);
}
【結果例】
[Microsoft Office IME 2007]
"そら"
(あるいは、"くう"または"から"など。直前に多く変換した文字で、学習機能の設定による。)
[Microsoft Office IME 2010]
"そら", "から", "くう", "あき", "ぞら", "あだ"
本現象はIMEコンポーネントが内部で使用しているMicrosoft IME API(IFELanguage インターフェース)の動作に起因しているため、製品の制限事項となります。
例えば、「空」という漢字の読みがなリストを取得する際、次のような結果となります。
【再現コード】
[Visual Basic]
Dim sl As String() = GrapeCity.Win.Editors.GcIme.GetReverseConversionList("空")
' 読みがなリストをデバッグウィンドウに表示します。
For Each s As String In sl
System.Diagnostics.Debug.WriteLine(s)
Next
[C#]
String[] sl = GrapeCity.Win.Editors.Ime.GcIme.GetReverseConversionList("空");
// 読みがなリストをデバッグウィンドウに表示します。
foreach(string s in sl)
{
System.Diagnostics.Debug.WriteLine(s);
}
【結果例】
[Microsoft Office IME 2007]
"そら"
(あるいは、"くう"または"から"など。直前に多く変換した文字で、学習機能の設定による。)
[Microsoft Office IME 2010]
"そら", "から", "くう", "あき", "ぞら", "あだ"
本現象はIMEコンポーネントが内部で使用しているMicrosoft IME API(IFELanguage インターフェース)の動作に起因しているため、製品の制限事項となります。