fontconfigファイルを編集してJAVAアプレットの文字化けを解消する


JAVAをインストールする環境によってはアプレット内の文字が四角”□”に文字化けしてしまう場合があります。これによりEspressChartやEspressReportでも文字化けが発生します。

発生する原因としては、JAVAがデフォルトで使用するフォントが指定しているパスに存在していない場合やそのフォントに日本語のフォントが含まれていないために発生します。

これを解決するためには、fontconfigというフォントのマッピングを設定しているファイルを編集するか、そこで指定されているパスにフォントを配置する必要があります。

このfontconfigは以下のような種類があり、上から順番に参照し、当てはまったものを適用します。またここでのOSとVersionはjava.homeのシステムプロパティに記載されているOSとバージョンで判断しています。
JavaHome/lib/fontconfig.OS.Version.properties
JavaHome/lib/fontconfig.OS.Version.bfc
JavaHome/lib/fontconfig.OS.properties
JavaHome/lib/fontconfig.OS.bfc
JavaHome/lib/fontconfig.Version.properties
JavaHome/lib/fontconfig.Version.bfc
JavaHome/lib/fontconfig.properties
JavaHome/lib/fontconfig.bfc

対象のfontconfigを編集して行くのですが、.bfcファイルはバイナリファイルであるため、基本的には.propertiesファイルを編集して行きます。
フォントのパスは以下のように指定されています。
# Font File Names

filename.フォント名=フォントファイルパス

ここのパスを存在するフォントのパスに変更するか、このパスにフォントを配置するかすることで、文字化けは解消します。
また、このfontconfigを変数することでアプレットで表示されるデフォルトの文字を任意のものにも変更できます。

関連するトピックス:

コメントを残す

メールアドレスが公開されることはありません。

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください