[RSS]

OpenSolaris や Linux で日本語が文字化け(四角□)してしまいます。どうすればよいでしょうか?

JDK と IDE のリリースノートを確認しましょう

NetBeans 5.5 の日本語、中国語、ブラジル系ポルトガル語バージョンは Red Hat Enterprise Linux 3 上でテストされています。それ以外のディストリビューション(例えば Ubuntu 6. x や Fedora Core 6) では Java のフォントが正しく設定されていない可能性があり日本語や中国語が文字化け(四角□)で表示されてしまうことがあります。

また OpenSolaris 2008.05 では OS 側のフォントが変更されているため java.sun.com からダウンロードした JDK ではフォントが□に表示されることがあります。回避方法にしたがって設定可能です。OpenSolaris に付属する JDK を使う場合には問題ありません。

これは JDK の問題で最近のディストリビューションにフォント設定ファイルが対応していないためです。まず最初に JDK のリリースノートと IDE のリリースノートを参照してお使いのディストリビューションがサポートされているか、テストされているかを確認しましょう。

回避方法

この問題は非常によく知られた問題です。Java SE のページや各 Linux ディストリビューションのページやフォーラムなどを参考にして Java のフォントを正しく設定してください。一番簡単な方法は Java 国際化 FAQ にあるように lib/fonts/fallback に日本語 TrueType フォントを置くことです。

以下は代表的な Linux ディストリビューションでの解決方法ですが、あくまで一例であり正式にサポートされている方法ではありません。自己責任において使用してください。

OpenSolaris 2008.05

  • OpenSolaris 2008.05 に付属する JDK を使った場合にはこの問題は発生しません。デフォルトでは JRE のみインストールされていますので JDK をインストールしてください。
% pfexec pkg install java-dev
JDK のみインストールする場合には
% pfexec pkg install SUNWj6dev
  • java.sun.com から JDK をインストールした場合では新しいディレクトリ <JDKをインストールしたディレクトリ>/jre/lib/fonts/fallback を作成し、日本語の TrueType フォントを置きます。
% mkdir jdk1.6.0_10/jre/lib/fonts/fallback
% ln -s /usr/X11/lib/X11/fonts/TrueType/ipafont/ipagui.ttf jdk1.6.0_10/jre/lib/fonts/fallback
  • あるいは OpenSolaris 2008.05 の JDK にある fontconfig.properties を使用します
% cp /usr/jdk/jdk1.6.0_06/jre/lib/fontconfig.properties jdk1.6.0_10/jre/lib

Fedora Core

Ubuntu

Debian

フォントのギザギザ問題

OpenSolaris や Linux ではフォントのアンチエイリアスが動作せず文字がギザギザで表示されることがあります。この場合以下のオプションで回避できます。
% netbeans -J-Dawt.useSystemAAFontSettings=on
コマンド行で渡すのが面倒な場合は etc/netbeans.conf に記述しておくことができます。