[Kdeveloper] [Qt-devel] Fwd: KDE 4.3における日本語フォントに関する問題整理
KOBAYASHI Tomoyuki
maron-kde @ maidlab.jp
2010年 1月 12日 (火) 10:52:22 UTC
こばやしと申します。
#fromを間違って投稿したので再送します。
MandrivaLinux/x86 2008.1(ちょっと古い)で試してみました。
環境は以下の通りです。
* qt4-4.3.4-6mdv2008.1 および
gitでとってきたHEAD (5339d24dc09525a67295adf98e9042971f4a9b2e)
(freetype, fontconfig有効でコンパイル)
* libfreetype6-2.3.5-2.2mdv2008.1
* fontconfig-2.5.0-2mdv2008.1
* libxft2-2.1.12-4mdv2008.1
Qtはfontconfig経由でフォントを読むときはfontconfigを利用し
(src/gui/text/qfontengine_x11.cpp)、
*.{ttf,otf}を指定されて自前でフォントファイルを
開かなければならないときは、freetypeを直接
(src/gui/text/qfontengine_ft.cpp)
叩いています。
結果としては、
1. freetypeinfo(*.ttfのファイル指定)で
所謂半角と全角の横幅がほぼ倍になるもの
* fonts-ttf-japanese-0.20080217-1mdv2008.1
(http://www.geocities.jp/ep3797/modified_fonts_01.html)
* fonts-ttf-japanese-extra-0.20040217-7mdv2008.1
(http://sourceforge.jp/projects/mplus-fonts/)
* fonts-ttf-japanese-mplus_ipagothic-20060520-3mdv2008.1
(http://mix-mplus-ipa.sourceforge.jp/)
* IPAの古いフォント(ビットマップ埋め込み)
* Solarisで使われているフォントをテスト用に拝借
2. freetypeinfoで所謂半角と全角の横幅が同じになるもの
* IPAfont00301
3. フォントを$HOME/.fonts/*.{ttf,otf}において
fontconfig経由で読む
(examples/painting/fontsampler/fontsampler)
とき、"abc"と半角で正常に表示されるもの
* 1に挙げたIPA以外のフォント
* IPAfont00101
4. フォントを$HOME/.fonts/*.{ttf,otf}において
fontconfig経由で読む、
所謂半角が"f o o b a r "状態になるもの
* IPAfont00103
* IPAfont00201
* IPAfont00203
* IPAfont00301
という感じになりました。
やはりIPAfontに特有の問題が潜んでいるような気がします。
ただ、ここで使用しているfontconfigはユーロ記号が入っていない
古いフォントはラテン用として認識してくれない
という落とし穴のあるバージョンです。
(今回のテストではユーロ記号を無視するパッチははずしていますが
それが結果に影響を与えているかはまだ調べていません)
fontconfigは少々難解なxmlファイルに
かなり細かい指定が書けるので、
$HOME/.fonts.confで頑張ればなんとかなるかもしれません。
#うちのfirefoxはfontconfigに丸投げしていますが、
#所謂半角アルファベットにはサンセリフを使い、
#全角漢字では明朝を使用し、
#さらに全角漢字のピクセル数が指定より越えたら
#ゴシックにするようにしています。
--
小林ともゆき http://imcp.maid.ne.jp/
GPG DSA#B60BDED8 FP:639B11BC 4E46C768 0DF3-596E EC670510 B60BDED8
Kde-jp メーリングリストの案内