kkamegawa's weblog

Visual Studio,TFS,ALM,VSTS,DevOps関係のことについていろいろと書いていきます。Google Analyticsで解析を行っています

IME関係のAPI

私はお仕事柄、JIS78なんてものをいまだに使う必要が「かなり」あります(Vistaでどうするんだろ〜)。そこで困っているのが、MS-IMEの変換候補のフォントレンダリングがJIS90(MSゴシック)で行われているため、JIS78→90(正確にはJIS83)で文字コードの変更があった文字が変換候補に出ないと言うこと。よくあるのが「遙」「槙原」です。
これはIMEレンダリングだから仕方ないのかな…と思っていたら、ちゃんと回避方法があるっぽい。今手元で確認したのはMS-IME2003(Windows Server 2003付属)とATOK17だけれど、変換候補オプションの候補ウィンドウのところに

  • 表示フォントを固定する(ATOK17)
  • 未確定文字のフォントを固定する(MS-IME2003)

というチェックがある。これをOFFにしておけば、アプリケーションで設定されるフォントでレンダリングされるらしい。知らなかった!
このフォントを設定するのがImmSetCompositionFont()。ちょっと試してみて、これでFA明朝の、JIS78文字でレンダリングされるようなことがあれば非常にうれしいのだが…。