「Java 実行環境のフォント」の版間の差分

提供: ArchWiki
ナビゲーションに移動 検索に移動
(1版 をインポートしました)
1行目: 1行目:
 
[[Category:フォント]]
 
[[Category:フォント]]
[[en:Java Runtime Environment Fonts]]
+
[[en:Java Runtime Environment fonts]]
  +
[[ru:Java Runtime Environment fonts]]
 
{{Related articles start}}
 
{{Related articles start}}
 
{{Related|フォント}}
 
{{Related|フォント}}
 
{{Related|フォント設定}}
 
{{Related|フォント設定}}
 
{{Related|MS フォント}}
 
{{Related|MS フォント}}
{{Related4|X Logical Font Description}}
+
{{Related|X Logical Font Description}}
 
{{Related articles end}}
 
{{Related articles end}}
 
ユーザーによってはデフォルトの Java フォントや Java アプリケーションのフォントの表示モードが気に入らないという人もいるでしょう。Oracle Java Runtime Environment (JRE) のフォント表示を改善する方法は複数存在します。これらの方法は別々に使うこともできますが、多くの場合まとめて使うことでより良い結果が得られるでしょう。
 
ユーザーによってはデフォルトの Java フォントや Java アプリケーションのフォントの表示モードが気に入らないという人もいるでしょう。Oracle Java Runtime Environment (JRE) のフォント表示を改善する方法は複数存在します。これらの方法は別々に使うこともできますが、多くの場合まとめて使うことでより良い結果が得られるでしょう。
12行目: 13行目:
   
 
==アンチエイリアス==
 
==アンチエイリアス==
フォントの[[Wikipedia:Antialiased_font|アンチエイリアス]]は Linux の Oracle Java 1.6 で利用可能です。ユーザーごとの設定でアンチエイリアスを使うには、次の行をユーザーの {{ic|~/.bashrc}} に追加してください:
+
フォントの[[Wikipedia:Antialiased_font|アンチエイリアス]]は Linux の Oracle Java 1.6 で利用可能です。システム全体の設定でアンチエイリアスを使うには、次の行を {{ic|/etc/environment}} に追加してください:
   
 
export _JAVA_OPTIONS='-Dawt.useSystemAAFontSettings=''setting'''
 
export _JAVA_OPTIONS='-Dawt.useSystemAAFontSettings=''setting'''
 
{{Note|'''TrueType''' fonts contain a '''g'''rid-fitting '''a'''nd '''s'''can-conversion '''p'''rocedure (''GASP'') table with the designer's recommendations for the font's display at different point sizes. Some sizes are recommended to be fully anti-aliased, others are to be hinted, and some are to be displayed as bitmaps. Combinations are sometimes used for certain point sizes.}}
 
   
 
{{Ic|''setting''}} は以下の7つの値のどれか一つに置き換えて下さい:
 
{{Ic|''setting''}} は以下の7つの値のどれか一つに置き換えて下さい:
29行目: 28行目:
   
 
多くの場合 {{Ic|gasp}} と {{Ic|lcd}} の設定が上手く機能します。
 
多くの場合 {{Ic|gasp}} と {{Ic|lcd}} の設定が上手く機能します。
  +
  +
{{Note|'''TrueType''' フォントにはポイントサイズに合わせてどうフォントを表示するかデザイナーによって決められたグリッド調整およびスキャン変換手続き (''GASP'') テーブルが含まれています。サイズによっては完全にアンチエイリアスをかけられたり、場合によってはヒンティングを適用したり、あるいはビットマップフォントとして表示するようになったりします。特定のポイントサイズではそれらを組み合わせて使われることもあります。}}
   
 
任意で GTK のルックアンドフィールを使うには、代わりに下の行を .bashrc に追加してください。上述の Java オプションやこのオプションは Java で GUI を描写している Jdownloader などのアプリケーションでしか意味がありません。Java をバックエンドでしか利用していないアプリケーション、Openoffice.org や Matlab などでは表示が変わりません。
 
任意で GTK のルックアンドフィールを使うには、代わりに下の行を .bashrc に追加してください。上述の Java オプションやこのオプションは Java で GUI を描写している Jdownloader などのアプリケーションでしか意味がありません。Java をバックエンドでしか利用していないアプリケーション、Openoffice.org や Matlab などでは表示が変わりません。
   
export _JAVA_OPTIONS='-Dswing.defaultlaf=com.sun.java.swing.plaf.gtk.GTKLookAndFeel' ''
+
_JAVA_OPTIONS='-Dswing.defaultlaf=com.sun.java.swing.plaf.gtk.GTKLookAndFeel' ''
   
上の変更を適用するには、通常ユーザーで {{ic|~/.bashrc}} を ''source'' してください
+
変更を適用するには再ログインする必要があります
$ source ~/.bashrc
 
   
 
Java アプリケーションの新しいインスタンスを開いて変更をテストしましょう。
 
Java アプリケーションの新しいインスタンスを開いて変更をテストしましょう。
  +
  +
=== OpenJDK パッチ ===
  +
  +
Java のオプションを使って強制的にアンチエイリアスをかけても、ネイティブアプリケーションのアンチエイリアスよりかは品質で劣ります。[[AUR]] にある OpenJDK のパッチを使うことで改善することができます:
  +
* パッチ適用済みの '''OpenJDK7''' は {{AUR|jre7-openjdk-infinality}} でインストールできます。
  +
* パッチ適用済みの '''OpenJDK8''' は {{AUR|jre8-openjdk-infinality}} でインストールできます ([[非公式ユーザーリポジトリ#infinality-bundle|Infinality 非公式リポジトリ]]からインストールすることも可能です)。
  +
パッチを適用したバージョンでは fontconfig と freetype の [[Infinality]] パッチを上手く混ぜ合わせています。
   
 
==フォント選択==
 
==フォント選択==
   
 
===TrueType フォント===
 
===TrueType フォント===
Java アプリケーションによっては特定の TrueType フォントを使用するよう選択できたりしますが、こういったアプリケーションは使用したいフォントのディレクトリパスを指定できるようになっています。TrueType フォントは {{ic|/usr/share/fonts/TTF}} ディレクトリにインストールされます。次の行を {{ic|~/.bashrc}} に追加してフォントを有効にしてください。
+
Java アプリケーションによっては特定の TrueType フォントを使用するよう選択できたりしますが、こういったアプリケーションは使用したいフォントのディレクトリパスを指定できるようになっています。TrueType フォントは {{ic|/usr/share/fonts/TTF}} ディレクトリにインストールされます。次の行を {{ic|/etc/environment}} に追加してフォントを有効にしてください。
export JAVA_FONTS=/usr/share/fonts/TTF
+
JAVA_FONTS=/usr/share/fonts/TTF
 
変更を適用するには通常ユーザーで {{ic|~/.bashrc}} をロードする必要があります。
 
$ source ~/.bashrc
 
 
===デフォルトフォント===
 
 
{{deletion|reason=These fontconfig files in recent version of JRe are obsolete. See http://bugs.sun.com/view_bug.do?bug_id=7013646.}}
 
 
The ''Lucida'' fonts distributed with the Sun JRE are the default for Java applications that do not specify a different font's use. The Lucida fonts were designed for low resolution displays and printers; many users will wish to use other fonts. The default Java fonts can be changed on a system-wide basis by the creation or editing of a file named {{ic|fontconfig.properties}}.
 
 
As root, change directory to {{ic|/opt/java/jre/lib}}. Copy {{ic|fontconfig.properties.src}} to {{ic|fontconfig.properties}}. Then, as root, open the new {{ic|fontconfig.properties}} in an editor.
 
# cd /opt/java/jre/lib
 
# cp fontconfig.properties.src fontconfig.properties
 
# nano fontconfig.properties
 
 
{{Note|Encodings other than ''Latin-1,'' or ''ISO-8859-1,'' are shown in other {{ic|fontconfig.properties.*.src}} files in {{ic|/opt/java/jre/lib}}. Some users will find these files to be better sources to use for editing. In all cases the edited file should be saved as {{ic|fontconfig.properties}}.}}
 
 
The Java font names in the configuration file are in the form of {{Ic|genericFontName.style.subset}}, for example, {{Ic|serif.plain.latin-1}}. These generic fonts are mapped to the installed fonts using [[X Logical Font Description|''X'' ''l''ogical ''f''ont ''d''escription]] (XLFD) names. The {{Ic|%d}}, in the example below, is used as a placeholder in the XLFD name for the point size. The Java application replaces {{Ic|%d}} at runtime.
 
serif.plain.latin-1=-b&h-lucidabright-medium-r-normal--*-%d-*-*-p-*-iso8859-1
 
   
  +
変更を適用するには再ログインする必要があります。
{{Tip|The utility, ''xfontsel,'' may be used to display fonts and to discover their XLFD names. Xfontsel is part of the {{Pkg|xorg-xfontsel}} package.}}
 
   
  +
===文字化けの修正 (JRE8)===
Change the Lucida fonts named in the {{ic|fontconfig.properties}} file to your selected fonts using the XLFD names. Below is an excerpt of a {{ic|fontconfig.properties}} file after modifications have been made. The Lucida fonts have been replaced by ''DejaVu'' fonts.
 
  +
以下のディレクトリにフォントファイルを配置してください。ディレクトリが存在しない場合は作成してください。
# Version -- a version number is required.
 
# IMPORTANT -- Do not delete the next line. Ever.
 
version=1
 
 
# Component Font Mappings
 
# gen_name.style.subset=
 
# -fndry-fmly-wght-slant-sWdth-adstyle-pxlsz-ptSz-resx-resy-spc-avgWdth-rgstry-encdng
 
 
serif.plain.latin-1=-misc-dejavu serif-medium-r-normal-*-*-%d-*-*-p-*-iso8859-1
 
serif.bold.latin-1=-misc-dejavu serif-bold-r-normal-*-*-%d-*-*-p-*-iso8859-1
 
serif.italic.latin-1=-misc-dejavu serif-medium-o-normal-*-*-%d-*-*-p-*-iso8859-1
 
   
  +
/usr/lib/jvm/java-8-openjdk/jre/lib/fonts/fallback/
After the changes have been saved to {{ic|fontconfig.properties}}, the editor may be closed and the user should drop root privileges. Open a new instance of a Java application to test the changes.
 

2015年11月15日 (日) 15:49時点における版

関連記事

ユーザーによってはデフォルトの Java フォントや Java アプリケーションのフォントの表示モードが気に入らないという人もいるでしょう。Oracle Java Runtime Environment (JRE) のフォント表示を改善する方法は複数存在します。これらの方法は別々に使うこともできますが、多くの場合まとめて使うことでより良い結果が得られるでしょう。

TrueType フォントは Java で一番良くサポートされているフォーマットです。

アンチエイリアス

フォントのアンチエイリアスは Linux の Oracle Java 1.6 で利用可能です。システム全体の設定でアンチエイリアスを使うには、次の行を /etc/environment に追加してください:

export _JAVA_OPTIONS='-Dawt.useSystemAAFontSettings=setting'

setting は以下の7つの値のどれか一つに置き換えて下さい:

  • off または false または default – アンチエイリアスなし
  • on – 完全なアンチエイリアス
  • gasp – フォントに埋め込まれたヒント情報を使う
  • lcd または lcd_hrgb – 多数派の LCD モニターにあわせてアンチエイリアスを調整する
  • lcd_hbgr – もうひとつの LCD モニター設定
  • lcd_vrgb – もうひとつの LCD モニター設定
  • lcd_vbgr – もうひとつの LCD モニター設定

多くの場合 gasplcd の設定が上手く機能します。

ノート: TrueType フォントにはポイントサイズに合わせてどうフォントを表示するかデザイナーによって決められたグリッド調整およびスキャン変換手続き (GASP) テーブルが含まれています。サイズによっては完全にアンチエイリアスをかけられたり、場合によってはヒンティングを適用したり、あるいはビットマップフォントとして表示するようになったりします。特定のポイントサイズではそれらを組み合わせて使われることもあります。

任意で GTK のルックアンドフィールを使うには、代わりに下の行を .bashrc に追加してください。上述の Java オプションやこのオプションは Java で GUI を描写している Jdownloader などのアプリケーションでしか意味がありません。Java をバックエンドでしか利用していないアプリケーション、Openoffice.org や Matlab などでは表示が変わりません。

_JAVA_OPTIONS='-Dswing.defaultlaf=com.sun.java.swing.plaf.gtk.GTKLookAndFeel' 

変更を適用するには再ログインする必要があります。

Java アプリケーションの新しいインスタンスを開いて変更をテストしましょう。

OpenJDK パッチ

Java のオプションを使って強制的にアンチエイリアスをかけても、ネイティブアプリケーションのアンチエイリアスよりかは品質で劣ります。AUR にある OpenJDK のパッチを使うことで改善することができます:

パッチを適用したバージョンでは fontconfig と freetype の Infinality パッチを上手く混ぜ合わせています。

フォント選択

TrueType フォント

Java アプリケーションによっては特定の TrueType フォントを使用するよう選択できたりしますが、こういったアプリケーションは使用したいフォントのディレクトリパスを指定できるようになっています。TrueType フォントは /usr/share/fonts/TTF ディレクトリにインストールされます。次の行を /etc/environment に追加してフォントを有効にしてください。

JAVA_FONTS=/usr/share/fonts/TTF

変更を適用するには再ログインする必要があります。

文字化けの修正 (JRE8)

以下のディレクトリにフォントファイルを配置してください。ディレクトリが存在しない場合は作成してください。

/usr/lib/jvm/java-8-openjdk/jre/lib/fonts/fallback/