Wineでのフォント調整
2009/10/05
Wineのデフォルト状態では日本語が正しく表示されない(□で表示される)場合が多い。
これを調整した時のメモ。
環境
- Kubuntu 9.04/amd64
- Wine 1.1.30
レジストリによる調整
HKEY_CURRENT_USER\Software\Wine\Fonts\Replacements
以下に置き換え対象のフォントをゴリゴリと登録する。
例)
"MS Pゴシック"="VL Pゴシック"
私は以下のようにレジストリファイルを作成してインポートしています。
wine-font.txt:レジストリファイルのダウンロード(拡張子を.txt→.regへ変更して下さい)
REGEDIT4 [HKEY_CURRENT_USER\Software\Wine\Fonts\Replacements] "Courier New"="Courier New" "Comic Sans MS"="Comic Sans MS" "FixedSys"="IPAゴシック" "Lucida Sans Unicode"="Lucida Sans" "Microsoft Sans Serif"="DejaVu Sans" "MS Pゴシック"="VL Pゴシック" "MS PGothic"="VL Pゴシック" "MS P明朝"="IPA P明朝" "MS UI Gothic"="VL Pゴシック" "MS ゴシック"="VL ゴシック" "MS Gothic"="VL ゴシック" "MS 明朝"="IPA明朝" "Small fonts"="VL ゴシック" "System"="VL ゴシック" "Terminal"="VL Pゴシック" "Verdana"="VL Pゴシック" [HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\FontSubstitutes] "Courier New"="Courier New" "Comic Sans MS"="Comic Sans MS" "Verdana"="VL Pゴシック" [HKEY_CURRENT_USER\Control Panel\Desktop] "FontSmoothing"="2"
これでもまだ文字化けする場合
lsof を利用して利用しているフォントを調査する。以下はCrystalMark 2004R3 を動作させた時の結果。
$ lsof | grep Crystal | grep ttf CrystalMa (中略) /usr/share/wine/fonts/tahoma.ttf
上記によると/usr/share/wine/fonts/tahoma.ttfが利用されているらしい。
このtahoma.ttfに日本語が含まれていないのが問題っぽい。と、いうことで「 ttt:(FreeBSD) wineでPicasa2を動かしたら文字化けしたので、気合で修正」を参考に以下のように修正。
- /usr/share/wine/fonts/tahoma.ttf を /usr/share/wine/fonts.bak/tahoma.ttf へ移動
- VL Pゴシックのシンボリックリンクを /usr/share/wine/fonts/tahoma.ttf へ作成(必要ないかも)
これでTahomaを指定されていた部分も正常に表示されるようになりました。
このときのlsofの結果は次の通り。
$ lsof | grep ttf | grep Crystal CrystalMa (中略) /usr/share/fonts/truetype/msttcorefonts/Arial.ttf CrystalMa (中略) /usr/share/fonts/truetype/vlgothic/VL-PGothic-Regular.ttf