WPFのフォントに関すること | モンクのブログ

モンクのブログ

WPFについて、デザイナーの視点から書いていきたいなと。
サンプルなんかも上げたりして。でもモンクだらけになりそうな・・・。

WPFで構築したプログラムをXPで表示させるには、様々な注意が必要なのですが、重要なのは2点だと思います。


1.ウインドウ枠に対しallowtransparency="true"をかけるとプログラムの動作が非常に重くなる
2.フォントの表示に関する解釈が今までのプログラムと違う

1に関しては後日不満をぶちまけますが、2に関して今日ネットで調べた情報。

WPFのフォント解釈は自動的にアンチエイリアスがかかります。

(1)理由
 論理座標に色を配置する為。

(2)どういうことが起こるの?
 標準のフォントがMSゴシックしか選べない状態でプログラムを表示させると
 アンチエイリアスのかかったMSゴシックしか表示できない。
 →配布するプログラムがXPを対象環境として認めている場合、
 上記フォントでの表示を覚悟せざるを得ないということです。

 唯一メイリオでの表示は何故か綺麗。ですがメイリオの再配布は認められていないので、
 プログラムに対する埋め込みはできません。

 つまり強制的にメイリオでの表示に変更させることもできません。

(3)解決方法
 代替フォントにメイリオに近い見え方をするフォントを設定するという方法はありますが、
 あまり企業ユースのソフトでは使いたくない・・。

 これを根本的に解決する方法は現在は無いと判断しています。


 →WPF4からはTrueTypeの埋め込みビットマップフォントが使用されるため解決されるという表明が
 Microsoftからあったそうですが・・。やってみないとわかりませんね。


格段に改善された・・と説明を受けたのに・・。しょぼん