2011年03月20日

Windows Mobileでフォントを綺麗に表示させる(アンチエイリアス編)

WMデバイス上でMacのヒラギノフォント等を使いたいとき、fontforgeを使ってttf化し転送して設定するわけですが、それをクリアタイプで表示すると綺麗に表示されません。
そこでアンチエイリアス設定をしてやることで綺麗に表示してやろうという試みです。

またアンチエイリアス表示はクリアタイプ表示より処理が軽いようなので、Hybrid W-ZERO3のようにCPUクロックを抑えている場合は少しでも効果的かもしれません(体感的に差はないですけど)





まず簡単に行程を箇条書きしてみます。
@fontforgeを使ってotf→ttf変換
Attfmodを使用してフォント情報のヒンティング・スムージングをオンにする
BWMデバイス上でフォントを設定してやる。


例としてヒラギノフォントの場合で説明します。
細いフォントでアンチエイリアスをかけると滲んで薄くなり可読性が非常に悪いので、W4以上の太さのフォント使用が良いと思います。

@ヒラギノフォントをfontforgeでttf化する作業はGoogleで検索すればすぐに出てくるので割愛します。しれっと書いてますがこれが一番面倒くさいです。

Attfmod→ダウンロードサイト
GUI版を使用します。
起動した後フォントを読み込ませ、ヒンティング・スムージング両方を全てONにします。下の画像で「なし」のあたりをダブルクリックするとダイアログが出るのでチェックボックスをオンにしてOKで閉じます。これが「なし」の設定になっているフォントサイズではアンチエイリアス表示されません。
その後ファイル→書き出し で保存。その後デバイスに転送します。
ttfmod


BWMデバイス上での設定
こちらのページきちんと読んで理解した上で下記レジストリを設定。

レジストリキーの作成
HKLM/System/GDI/Fontsmoothing

[HKEY_LOCAL_MACHINE\System\GDI]
"ForceGRAY16"=dword:1

余談ですが一見"ForceGRAY16"を設定してやることで、上記Aの手順は不要なように感じますが、この設定よりフォントに埋め込まれた情報の方が優先順位が高いようで、Aの手順をしないとアンチエイリアス表示されない場合があります。

後はアプリケーション毎にフォントを設定してあげてください。
また設定の「クリアタイプをオンにする」のチェックボックスはオフにしてください、アンチエイリアスよりクリアタイプの方が優先されます。



これで終了です、お疲れ様でした。
といいたい所なのですが、IEのフォントなどMSゴシック系で固定されている部分も変更させるべく、フォントリンクを設定して使用したい場合は追加で作業が必要になります。

例によって箇条書き
Cデバイスのtahoma.ttf cour.ttfを取り出し、ttfmodでヒンティング・スムージングを設定した後上書き。
Dデバイスのmsgothic.ac3を0バイトのファイルで上書き
EPocketの手などでフォントリンクを設定。



Cフォントリンクを設定した場合でも、元のフォント内情報が優先されるようなのでTahoma・Courier Newに関してもヒンティング・スムージング設定が必要になります。これはAと同様の手順です、というかAのスクリーンショットがtahomaになっていたのはこれの伏線です。

Dこのac3という形式で圧縮されたフォント内情報を弄る手段がないので、仕方なく0バイトファイルで上書きします。
その場合、MSゴシック系はフォント名順で一番若いフォントで表示されます。大抵の人はCourier Newになると思います。
このDの手順はフォントが豆腐になったり、最悪起動しなくなって初期化を要する事もあるかもしれないので、そのリスクを理解した上で行ってください。

E後は普通にレジストリでフォントリンクを設定して再起動してやればTahoma・Courier New・MSゴシック系でもヒラギノで表示されるはずです。



ttfなフリーフォントでクリアタイプにしても綺麗に表示されない場合、A以下の手順を踏めば同様に綺麗に表示されるはずです。フォントによってはAの手順も不要です。

今度こそおしまいです、お疲れ様でした。


MaruGoAA-SRをttf化したものをアンチエイリアス表示
スキン


前回アップした画像
・クリアタイプ
クリアタイプ表示



・アンチエイリアス
無理矢理アンチエイリアス表示




----追記----
初代W-ZERO3(WM5)でも同様の手順で表示を確認しました。


・しねきゃぷしょん
しねきゃぷしょん
posted by Andros at 19:28 | Comment(0) | TrackBack(0) | Hybrid W-ZERO3(WS027SH)
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。
※ブログオーナーが承認したコメントのみ表示されます。

この記事へのトラックバック
こんなブログRSSに登録する必要あるの?
RDF Site Summary
RSS 2.0
×

この広告は1年以上新しい記事の投稿がないブログに表示されております。