2009年11月16日月曜日

Windows 7 壁紙の仕様

 前述の記事で新しく液晶ディスプレイを買ったことを書いたが、困ったことが発生した。Windows 7の壁紙のリサイズシステムはてっきりディスプレイごとにリサイズしたものを表示してくれるものだと思っていたが、実際にはメインディスプレイ用にリサイズしたものをすべてのディスプレイの中心に表示していた。おかげで、新しいディスプレイには真ん中にぽつんと壁紙が表示されてしまう。せっかくWUXGAの壁紙を大量に持っているのにもったいない。
 これについて色々仕様を調査していたところ、"画像を並べて表示"にすることで、デュアルディスプレイの双方で異なる壁紙を表示できることがわかった。デュアルディスプレイにおいて"画像を並べて表示"する設定にしていた場合、Windows 7はそのディスプレイの位置関係の設定に関係なく、ディスプレイnとディスプレイn+1の右上と左上をつないだ関係で壁紙を描画する。また、画像の左上とディスプレイ1の左上を合わせて描画するので、この仕様にそって画像を結合し設定してやれば、異なるディスプレイに異なる壁紙を設定可能だ。まぁ、等倍の画像ははげしく劣化するので使えない技なのだが。
 壁紙の劣化、なんとかなりませんかね、Microsoftさん?

LG電子の液晶(W2261VG-PF)ディスプレイを買った

 最近流行のフルHDの安価な液晶だ。Xbox360とPCで共用するつもりで買ったので、ゲーム画面や動画が栄えるグレアパネルのもので最も安かったのでこれを選んだ。ちなみに価格は\17,980で、15%ポイント還元&送料無料なので価格.comの最安価(2009/11/16現在)よりも安い計算になる。
 DCRオンの時の50000:1のコントラスト比はグレアパネルも相まって非常に綺麗で、価格を考えれば画質は申し分ないのだが、OSDメニューがわかりづらかった。まず、ボタンが右側面にあるため、どのボタンが何のボタンか横からみないとわからない。そのくせ、OSDメニューは正面からみなくてはいけないので扱いづらいことこの上ない。また、HDMI接続時にはモード設定でゲームやスポーツが選択できるが、これは1080iの時は有効で1080pの時は無効であることが公式サイトには描いておらず、気付くのに時間を要した(最初はバグかと思った)。
 つやつやの本体であるが、予想したほどほこりや指紋は気にならない。300cdの画面はノートPCのメインディスプレイに目を移したとき輝度設定を下げていたかと思ってしまうほど明るい。
 悪くない買い物でした。

2009年11月7日土曜日

Macのフォントは何故美しいのか

2011/03/14改訂
 巷ではよくMacのフォントは美しい、という話を聞く。確かにMacで表示されるフォントは美しい。Vista以降日本語フォントとしてメイリオフォントが導入されたWindowsと比較して視認性こそ劣るものの、"見やすさ"はMacの方が上であると筆者は感じる(もちろん感じ方は人それぞれなので一概にどうとは言えないが)。
 では、何故Macのフォントは美しいのだろうか?よく、ヒラギノフォントとOsakaフォントをWindowsに導入することでWindowsでもMacの様に美しいフォントを導入しよう、という記事を見かけるが、あれはあまり正確ではない。Macはフォントそのものの美しさよりもフォントのレンダリングエンジンが優れているのだ。
 GDI++というレンダリングエンジンがある。これはWindowsのフォントレンダリングエンジンであるを置き換えるもので、プログラムと置き換えるフォントを指定してやることでフォントを美しくレンダリングしてくれる。GDI++は内部的には大きめのフォントを縮小して表示しているのだが、これが非常にMacのフォントと似ているのだ。Macのフォントレンダリングエンジンも同様の技術でフォントを描画していると思われる。ただしGDI++はソフトによっては非常に動作が重たくなるし、場合によっては動かないこともある。さらにはクリアタイプのかかり方が変になることがある。もともとOSに標準で組み込まれていないものを無理やり組み込んでいるので、当然といえば当然なのだが。しかし、GDI++でレンダリングすると、MSゴシック系のフォントが実は意外と綺麗であることがわかる。これもMacのフォントの美しさがフォントそのものの美しさだけではないことの証明だ。
 Microsoftはフォントのレンダリングエンジンについて根本的に見直す必要がある。メイリオのような小さいサイズにも専用にヒンティングが用意されたクリアタイプフォントはそのデータに従ってレンダリングすればよい。Windows 7以降でDirectX上に実装されたDirectWriteと呼ばれるテキストレンダリング用APIを用いれば、縦方向にもClearTypeにおいてアンチエイリアス処理が適用されるので、尚綺麗に描画されるだろう。しかし未だにMSゴシックなどのビットマップフォントを採用しているサイトは多いし、なによりMSゴシックでないとAAはきちんと表示できない。このためにも、ClearTypeとビットマップフォントとで異なるレンダリング方式を用いて、ビットマップフォントをより綺麗に描画する手法をMicrosoftは実装するべきだ。

2011/03/14追記
 ビットマップフォントを直接描画することで、コントラストがはっきりし、視認性にすぐれた表示をすることができるが、ディスプレイの進化によってDPIが上がり、高詳細化した現在ではわざわざビットマップフォントをそのまま描画するメリットは薄い。故にLinuxの多くのディストリビューションやUNIX系OSであるMac OSXは同様の機構を持ったフォントレンダラーを備える。