OS再インストールすると色々いじりたくなるもんでして、
今はもっぱらフォントに嵌ってます。
大体は色々いじくったあげく普段使ってるのに戻るんですが、
とりあえず今はこんな感じです。
アイコンフォント
画面のプロパティのアイコンのこと。これはメイリオ一択ですね。
Tahomaもいいんですが、メイリオ以上にフィットするものは
今のところ見当たりません。
この項目はExplorerのフォントと同義なので、
相当な割合で目にするフォントです。
メッセージボックスフォント
Chromeのタブがこのフォントを使います。(Ver27)
Chromeのタブサイズって変更できないので、
フォントの方を調整するしか無いんですよ。
今はメイリオUI使ってますが、なかなか良い感じ。
日本語(文章)フォント
普段使ってるのはHGPれいしっくですが、
今回はFontLink使ってCorbel+HGPれいしっくにしてみました。
・・・おおお、これはいい。思ってたよりかなりいい。
れいしっくってネットじゃあんまり見ませんが、
昔筆まめかなんかを買った時についてきてまして、一目惚れ。
MSUIGothicがあっても、メイリオが出てきても、
後述するOSAKAを使ってても、私の日本語文章は基本的にこれです。
なんというか馴染むんです。
見やすいじゃなく、読みやすい。手書きに近い感触ですかね?
れいしっくで唯一気になってたのが明朝のような英数字なんですが、
それをCorbelで補ってみました。
Corbelってのは分かりやすく言えばタクティクスオウガのダメージの数字。
…え?分かりにくいですか?
ちなみにCorbel+れいしっくにしたサンプル画像はこんなんです。

プログラムフォント
OSAKA。絶対にOSAKA。MSゴシック8ptを使ってた時に
これに出会った衝撃は忘れない。有志の皆さん、有難う!
・・・と思ってたんですけどね。
Rictyフォントってのを知りまして、見てみたんです。
あー!これSyntaxHighlighterのデフォルトフォント!
試してみた時、妙に気に入ってそのまま使ってたやつです。
それにMiguっていう日本語フォントを合成したのがRictyらしいです。
で、Windowsで試してみたんですが・・・うーん。(やり方はぐぐってね)
私的には、ここまでアンチエイリアスかけられると、
滲んでるようにしか見えないなぁ…
アンチエイリアスって凄く重い処理ですし、出来れば避けたい。
(ClearTypeですら、切ればTextOut系の処理速度が桁違いになる)
てことで私なりにやってみました。
Windowsの作法に則ったRictyっぽい何か
Windowsが用意してるFontLinkとClearTypeとConsolasを使います。
(Rictyの英字フォントはConsolasをベースにしたらしいので)
1. Miguフォント、Consolasをインストールします。
2. レジストリに以下を追加。
場所:HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontLink\SystemLink
値型:複数行文字列
名称:Consolas
中身:migu-1m-regular.ttf
3. OSを再起動
あとはフォントにConsolasを選べばRictyっぽくなります。
Visual Studioで実践
できません。VS独自でフォントリンクしてるからです。
・・・・・・いやいや、なぜ?多言語対応ですか?
いやそれはOS(君のとこの会社)がやってるのだけど・・・
何やってるんでしょうね彼らは。
仕方ないので独自フォントリンクをいじります。
1. %USERPROFILE%を開く
2. VsFontLk.dat というファイルを探して開く
(VSインストールしてればどっかにあります)
3. 0411の日本語リンクフォントを好きなのに変更。
例)
0411|Migu 1M|Migu 1M
これでフォントにConsolas指定すれば完成。
サンプル画像はこんなん。

うん、それっぽい。
ちなみにSHだとこうなります
#include "windows.h"
void main()
{
// とりあえず適当になんか作ります
// ...画面にルーラーでも書いてみますか
// DC取得
HDC hdc = GetDC( 0 );
// 超適当に4096を100ピクセル間隔で
for( int x = 0; x < 4096; x += 100 )
{
for( int y = 0; y < 100; y ++ )
{
// うわSetPixelVとか超懐かしい
SetPixelV( hdc, x, y, ( ( y >> 16 ) % 2 ) * 0xffffff );
}
// TextOutもするよ
WCHAR ch[ 64 ];
_itow( x, ch, 10 );
wcscat( ch, L"Pixel" );
TextOut( hdc, x, 100, ch, wcslen( ch ) );
}
MessageBox( 0, L"おしまい", L"Rictyっぽいなにか", 0 );
return;
}