非常に興味深い。日本語部分にもヒント情報があるフォント、というと、かつて IBM JDK と共に配布されていた Monotype のフォントを思い出しますが、あのフォントもヒンティング on だと日本語部分はかなりガコガコしてたっけ。(しかし視認性はかなり高くって驚いた記憶が。あそこまで『これでもか!』とヒント情報の入れられたフォントは後にも先にも見たことありません。) しかし、マイクロソフトのあのサンプルはちと酷すぎやしないか。ほとんど逆宣伝だよ…。
それにしても Mac OS X では一切ヒント情報を利用してない、というのは知らなかった。ちなみに Linux デスクトップ環境を使っている人は、ftview ユーティリティを使うことで簡単にヒンティング on/off の状態のフォントのレンダリング状況を見てみることが出来ます。確かにヒンティング off の方が文字のバランスは良いですね、大抵。それに確か、Apple ってアウトラインフォントレンダリングにおけるオートヒントアルゴリズムかなんかの特許を持ってるんですよね。昔、freetype がそのパテントに触れるとか触れないとかで結構問題になったことがあったような。また、同じ TrueType レンダリングエンジンでも、Windows、Mac、freetype と比べてみると、結構違う結果が得られることも多かったような。Linux で常用していたお気に入りのフォント+フルスクリーンアンチエイリアス環境を Windows 上でも再現しようとして、フォントのパラメータまで一生懸命いじって頑張ったけど、結局望むようなレンダリング結果は得られなかったことがあったんだよなぁ…。
ガーベラ枯れちゃった…
去年の年末にもらい、会社で育てていたガーベラが本葉が出る前に枯れてしまいました。寒すぎる、ということは無かったと思うし、水も切らさないよう気をつけていたんですが…。たぶん日照量が足りなかったのだと思う。途中で気がついて、昼間は窓際の日なたに置くようにしたら双葉の色が見る見る濃くなったんですが、どうも時すでに遅しだったらしく、そのまま枯れてしまいました。悲しい…。
Monotype でのヒンティングの具合
せっかくなので、ftview を使ってヒンティングの有無でどんな風にレンダリングが変化するかのサンプルを作ってみました。
まずアンチエイリアス on、ヒンティング off のサンプル。これが一番バランスが良いですね。ただ小さい部分では少しボケた線が目立つかもしれません。
アンチエイリアスは on のまま、フォント内ヒント情報を有効にした場合。18 point 以下の場合は文字の線が全て 1 dot で書かれているのがとても印象的。線の太さ、という意味ではとてもよくそろっているが、その分文字のバランスはヒンティング off の時よりも悪い感じ。
アンチエイリアスは on のままで、フォント内ヒント情報ではなく、freetype のオートヒンティング機能を有効にした場合。ヒンティング off の場合に近い感じですが、多少線の太さがそろっているような。freetype のオートヒントはそんなに強くは効かない感じですよね。
そもそもヒンティングというのは、フォントレンダリング時にアンチエイリアスをかけることの無かった時代に、フォントの線の太さのばらつきや字形の乱れを抑える目的で導入された技術です。ヒンティング処理なしにアウトラインフォントをこのくらい縮小してしまうと、こんな感じで読むに耐えない字形に崩れてしまいます。
しかし、ヒンティングを on にしてあげると、ほらこの通り<何者?(笑。アンチエイリアスのない環境では、ヒンティングの有無で可読性に圧倒的な差が生じることが分かります。
アンチエイリアス off の環境では、freetype のオートヒンティングもあまり有効には働かないことが分かります。それでも、ノーヒントに比べれば大分マシかな?
アンチエイリアス、ヒンティングとも on とした場合の日本語 glyph 付近。線の太さは一様だけれど、ひらがなとしてのバランスはイマイチになっちゃってますね (「こ」や「さ」が小さくなってしまったり)。ただひらがなのしたの縦線、横線の多い文字 (ハングルかなぁ) に注目。このあたりはヒントの有無で大いに結果の異なるところです。
オートヒンティングは、やっぱりフォント内ヒントとノーヒントの中間の結果に。
ヒンティング off の結果は、やっぱりバランスは一番良いけれど、特に下のほうの縦線、横線の多い文字で、ボヤけた線が目立ってしまっています。ただ、上でリンクした記事のコメントにもありましたが、ディスプレイの解像度が高くなればなるほど、そういう欠点は見えなくなるのだろうなぁ。
以上です。楽しんでいただけましたか?(^^