gdi++ Heliumの設定

以前の記事: [フォント] gdi++の設定 http://d.hatena.ne.jp/itouhiro/20100613



[しゃべり担当] Windows環境でフォントをキレイに表示する gdi++ジーディーアイ・プラスプラス)だけど、別のを使うことにしたんだ。


[合いの手担当] なぜ変更したの?

変更した理由

[しゃべり担当] これまで使っていた gdi++ FreeType(フリータイプ)版 (gdi0787) は、Google Chromeで効かないという問題があった。


そこで、gdi++ Helium(ヘリウム)版に替えてみた。Google Chromeもこれで効くようになった。


使用方法がこれまでと変わってしまったので、以下にメモするよ。

ダウンロード

http://free.flop.jp/gdi++/
にある gdi0930.zip をダウンロードして展開(解凍)する。

このzipファイルに含まれるバージョンは gdi++ Helium 20090211 だ。

インストール

ハードディスクのどこか適当な場所に、展開したフォルダを置く。
今回は C:\home\local の下に置くことにする。

設定

C:\home\local\gdi++ Helium 20090211
にある gdi++.iniテキストエディタ(メモ帳など)で開く。

後述の設定に書き換える。

実行

C:\home\local\gdi++ Helium 20090211\gditray.exe を実行する。
これで、指定したソフトのフォント表示が改善される。

フォント表示がおかしいぞ‥というときは「通知領域」のGDI trayアイコンを右クリックして、いったん「終了」する。

そして、先ほどのgditray.exe をまた実行する。それでもだめならアプリのほうを再立ち上げする。


設定ファイル

設定ファイルは、以下のようにしている。

[General]
Name=itouhiro20110125

; 子プロセスにも自動適用
; [0:Disable]  1:Enable
HookChildProcesses=1

[Rasterize]
; ヒンティング方式
; ※"=0"を推奨
; 0:NoHinting  [1:Normal]  2:AutoHinting  3:Light+AutoHinting
HintingMode=0
; アンチエイリアス方式
; ※一般的なRGB配列の液晶モニタであれば"=0"を推奨(BGR配列のモニタに於いては"=3")
; 0:Disable  [1:Grayscale]  2:SubPixel(RGB)  3:SubPixel(BGR)
AntiAliasMode=2
; 標準のウェイト
; ※"Individual"で個別設定されているフォントには適用されない
; -32:+32
NormalWeight=0
; 太字のウェイト
; ※"Individual"で個別設定されているフォントには適用されない
; -16:+16
BoldWeight=0
; 斜体の傾き具合
; -16:+16
ItalicSlant=0
; 濃さの調整
; -32:+32
Saturation=4

[Misc]
; gdi++に処理させる最大サイズ(ピクセル単位)
; 0-2147483647
MaxHeight=72
; ガンマ補正を使う
; [0:Disable]  1:Enable
GammaCorrection=0
; α値を補間する
; ※GammaCorrection="0"の場合のみ有効
; 0-16
Interpolation=0
; 縦書きを使用する
; [0:Disable]  1:Enable
VerticalText=0
; モジュールリストの優先順位
; [0:Deny]  1:Allow  2:Allow->Deny
ModuleListOrder=1

[FreeType]
; FT_Library_SetLcdFilterに渡すパラメータ
; [0:None]  1:Default  2:Light  16:Legacy
LcdFilter=1
; FreeTypeのバージョンチェックをスキップ
SkipVersionCheck=1

[Cache]
; キャッシュ
MaxFamilies=8
MaxStyles=12
MaxBytes=8388608

[Individual]
; フォント別設定

[FontLink]
; フォントリンクのような物
; Format: FontName=Name1,Name2,Name3, ... (Max:16)
Lucida Sans Unicode = MS UI Gothic
MS UI Gothic = SimSun, PMingLiU
Microsoft Sans Serif = MS UI Gothic
Courier New = Migu 1M

[Exclude]
; 除外フォント
Marlett
Tahoma
MS UI Gothic
MS Pゴシック
MS ゴシック
Terminus-ja

[AllowModule]
; 許可モジュールリスト
iexplore.exe
firefox.exe
chrome.exe
iron.exe
opera.exe
thunderbird.exe
notepad.exe
WINWORD.EXE
EXCEL.EXE
POWERPNT.EXE
soffice.bin
sakura.exe

[DenyModule]
; 拒否モジュールリスト

[UnloadDLL]
; ロードさせたくないプロセス

[GdiTray]
; 起動時、自動で有効にします。
; 0:off  1:on
AutoEnable=1

; メッセージ表示にバルーンを使用します。
; 0:off  1:on
NotifyBalloon=1

; INI切り替え機能を使います。
; 0:off  1:on
MultiINISelector=1

; アイコン付きメニューを使います。
; 0:off  1:on
CoolMenu=1

; 左ダブルクリックの動作を指定します。
; 0:再適用  1:on/off切り替え(gdippManager互換)
ToggleDoubleClick=0

; タスクトレイのアイコンを変更します。
; 0-9
IconIndex=3

; 再描画のウェイトを指定します。
; 1-2000 [ms]
RedrawDelay=250


[合いの手担当] この設定にはどんな特徴が?


[しゃべり担当]
■表示品質

表示の品質を選べるけど、この設定は「サブピクセルレンダリング」「ヒンティングなし」だ。
Linuxの表示と比べるとすこし太くて、文字が丸い感じだが、個人的には読みやすい。


■アプリ限定

そしてgditray.exeの特徴だけど、特定のアプリ(ソフト)にだけ、フォントなめらか効果をかけることができるんだ。


初期設定だと、すべてのソフトにフォントなめらか効果がかかってしまうんだけど、
「モジュールリストの優先順位」 ModuleListOrder を 1:Allowのみ
にして、gdi++効果をかけてもよい許可モジュールを [AllowModule] に並べれば、指定アプリだけ効果がかかる。

上の設定で、以下のアプリだけなめらかになるよ。

アプリのバージョン番号は念のために書いたけど、バージョンに関係なく、[タスクマネージャー>プロセス>イメージ名]に chrome.exe 等と表示されるアプリなら効果がある。


64bitで問題あり

Windows XP + Office2003 なら上の設定でとくに問題ないんだ。


ただし挙動にはクセがあって、
メモ帳(notepad.exe)を起動してから3秒くらいたって、やっとフォントなめらか化が始まる。


だから、それより前に表示した文字は一時的にgdi++が効いてない状態で表示されるんだ。まあこれは3秒待てばいいので、たいしたことではない。

メモ帳は起動が早いからわかるけど、ほかのアプリは起動に3秒くらいは時間かかるので、ぜんぜん気にならないよ。



でもね、Windows 7 64bitで試したら、問題がいくつかあった。

  • 64bitアプリで効果がない。
    たとえばメモ帳(notepad)にも効かない。
  • IE8にも効果がない。
  • Wordへの効果も中途半端。


それでも、Google Chromeは32bitアプリだから効果あったし、じゅうぶん使えると思ったよ。


64bitへの対応は、ezgdiとかgdippという別のソフトでできるらしい‥‥
それはまだ試してないんだ。


[合いの手担当] へー。


[しゃべり担当] というわけで、http://mix-mplus-ipa.sourceforge.jp の補足記事でした。



続き: 2011-06-15 [フォント] gdi++ Heliumの設定を変更 http://d.hatena.ne.jp/itouhiro/20110615



FONT x FAN HYBRID

FONT x FAN HYBRID

  • 出版社/メーカー: ポータル・アンド・クリエイティブ
  • 発売日: 2010-09-17
  • メディア: DVD