2007年5月10日木曜日

デフォルトで使われる日本語フォント

僕が初めてLinuxに触れたのはFedoraCore1が出るか出ないかの頃でした。
Windows2000をメインに使っていたのですが、その頃のWindowsとLinuxのフォントを比べるとLinuxの日本語フォントが恐ろしく汚くて貧相だったことを今でも思い出します。
でも今は本当に綺麗になりましたね。
選ぶフォントによってはWindowsXPよりも綺麗に見えます。
その中でもUbuntuは群を抜いて綺麗に表示されていると思います。

今日は和文を表示するときにデフォルトで選択されるフォントを変更してみました。
Ubuntuでは英文フォントを選択してもきちんと和文が表示されますが、
その時に表示されている和文部分はIPAMonaがデフォルトで選択されて表示されます。
つまり、この和文部分をを別の和文フォントに置き換えようということです。
/usr/share/language-selector/fontconfig/ja_JPをテキストエディターで開きます。

$> sudo gedit /usr/share/language-selector/fontconfig/ja_JP

ファイルの中程以降に
<match target="pattern">
で始まるブロックがファイルの最後まで続いていると思います。
僕の場合はこうなっていました。
<match target="pattern">
<test qual="any" name="family">
<string>sans-serif</string>
</test>
<edit name="family" mode="prepend" binding="strong">
<string>IPAMonaPGothic</string>
<string>IPAPGothic</string>
<string>Sazanami Gothic</string>
<string>Kochi Gothic</string>
</edit>
</match>

<match target="pattern">
<test qual="any" name="family">
<string>serif</string>
</test>
<edit name="family" mode="prepend" binding="strong">
<string>IPAMonaPMincho</string>
<string>IPAPMincho</string>
<string>Sazanami Mincho</string>
<string>Kochi Mincho</string>
</edit>
</match>

<match target="pattern">
<test qual="any" name="family">
<string>monospace</string>
</test>
<edit name="family" mode="prepend" binding="strong">
<string>IPAMonaGothic</string>
<string>IPAGothic</string>
<string>Sazanami Gothic</string>
<string>Kochi Gothic</string>
</edit>
</match>

sans-serif serif monospace の3種類のフォントを置き換えることが出来るわけです。
これをホームディレクトリの .fonts.conf に追加して、ファイルの1番最後は</fontconfig>で全体を閉じていることを確認します。
例えば僕の場合は1番目のsans-serifに対しては
<string>M+1P+IPAG circle</string>

<string>IPAMonaPGothic</string>
の直前の行に追加しました。

<match target="pattern">
<test qual="any" name="family">
<string>sans-serif</string>
</test>
<edit name="family" mode="prepend" binding="strong">
<string>M+1P+IPAG circle</string>
<string>IPAMonaPGothic</string>
<string>IPAPGothic</string>
<string>Sazanami Gothic</string>
<string>Kochi Gothic</string>
</edit>
</match>

こうしました。
この場合、例えば英文フォントにDejaVu Sansを指定しても、和文フォントはM+1P+IPAG circleで表示されます。
この時に指定するフォント名は、フォントファイルをフォントビュアーで見た時にフォント名として表示されているものです。
好みにより、serifやmonospaceも一緒に変更してみるのも良いと思います。

0 件のコメント: