「Java Runtime Environment のフォント」の版間の差分
(同期) |
(同期) |
||
13行目: | 13行目: | ||
==アンチエイリアス== |
==アンチエイリアス== |
||
− | フォントの[[Wikipedia:Antialiased_font|アンチエイリアス]]は Linux の Oracle Java 1.6 で利用可能です。システム全体の設定でアンチエイリアスを使うには、次の行を {{ic|/etc/environment}} に追加してください: |
+ | フォントの[[Wikipedia:Antialiased_font|アンチエイリアス]]は Linux の Oracle Java 1.6 及び OpenJDK で利用可能です。システム全体の設定でアンチエイリアスを使うには、次の行を {{ic|/etc/environment}} に追加してください: |
export _JAVA_OPTIONS='-Dawt.useSystemAAFontSettings=''setting''' |
export _JAVA_OPTIONS='-Dawt.useSystemAAFontSettings=''setting''' |
||
19行目: | 19行目: | ||
{{Ic|''setting''}} は以下の7つの値のどれか一つに置き換えて下さい: |
{{Ic|''setting''}} は以下の7つの値のどれか一つに置き換えて下さい: |
||
+ | {| class="wikitable" |
||
− | :*{{Ic|off}} または {{Ic|false}} または {{Ic|default}} – アンチエイリアスなし |
||
+ | ! 設定 |
||
− | :*{{Ic|on}} – 完全なアンチエイリアス |
||
+ | ! 説明 |
||
− | :*{{Ic|gasp}} – フォントに埋め込まれたヒント情報を使う |
||
+ | |- |
||
− | :*{{Ic|lcd}} または {{Ic|lcd_hrgb}} – 多数派の LCD モニターにあわせてアンチエイリアスを調整する |
||
+ | | {{Ic|off}}, {{Ic|false}}, {{Ic|default}} |
||
− | :*{{Ic|lcd_hbgr}} – もうひとつの LCD モニター設定 |
||
+ | | アンチエイリアスなし |
||
− | :*{{Ic|lcd_vrgb}} – もうひとつの LCD モニター設定 |
||
+ | |- |
||
− | :*{{Ic|lcd_vbgr}} – もうひとつの LCD モニター設定 |
||
+ | | {{Ic|on}} |
||
+ | | 完全なアンチエイリアス |
||
+ | |- |
||
+ | | {{Ic|gasp}} |
||
+ | | フォントに埋め込まれたヒント情報を使う |
||
+ | |- |
||
+ | | {{Ic|lcd}}, {{Ic|lcd_hrgb}} |
||
+ | | 多数派の LCD モニターにあわせてアンチエイリアスを調整する |
||
+ | |- |
||
+ | | {{Ic|lcd_hbgr}}, {{Ic|lcd_vrgb}}, {{Ic|lcd_vbgr}} |
||
+ | | もうひとつの LCD モニター設定 |
||
+ | |} |
||
多くの場合 {{Ic|gasp}} と {{Ic|lcd}} の設定が上手く機能します。 |
多くの場合 {{Ic|gasp}} と {{Ic|lcd}} の設定が上手く機能します。 |
||
+ | 任意で GTK のルックアンドフィールを使うには、代わりに下の行を .bashrc に追加してください。 |
||
− | {{Note|'''TrueType''' フォントにはポイントサイズに合わせてどうフォントを表示するかデザイナーによって決められたグリッド調整およびスキャン変換手続き (''GASP'') テーブルが含まれています。サイズによっては完全にアンチエイリアスをかけられたり、場合によってはヒンティングを適用したり、あるいはビットマップフォントとして表示するようになったりします。特定のポイントサイズではそれらを組み合わせて使われることもあります。}} |
||
− | |||
− | 任意で GTK のルックアンドフィールを使うには、代わりに下の行を .bashrc に追加してください。上述の Java オプションやこのオプションは Java で GUI を描写している Jdownloader などのアプリケーションでしか意味がありません。Java をバックエンドでしか利用していないアプリケーション、Openoffice.org や Matlab などでは表示が変わりません。 |
||
_JAVA_OPTIONS='-Dswing.defaultlaf=com.sun.java.swing.plaf.gtk.GTKLookAndFeel' '' |
_JAVA_OPTIONS='-Dswing.defaultlaf=com.sun.java.swing.plaf.gtk.GTKLookAndFeel' '' |
||
+ | {{Note| |
||
− | 変更を適用するには再ログインする必要があります。 |
||
+ | * 上述の Java オプションやこのオプションは Java で GUI を描写している Jdownloader などのアプリケーションでしか意味がありません。Java をバックエンドでしか利用していない Openoffice.org や Matlab などのアプリケーションでは表示が変わりません。 |
||
+ | * '''TrueType''' フォントにはポイントサイズに合わせてどうフォントを表示するかデザイナーによって決められたグリッド調整およびスキャン変換手続き (''GASP'') テーブルが含まれています。サイズによっては完全にアンチエイリアスをかけられたり、場合によってはヒンティングを適用したり、あるいはビットマップフォントとして表示するようになったりします。特定のポイントサイズではそれらを組み合わせて使われることもあります。}} |
||
+ | コマンドラインで実行ファイルの前に変数を指定して新しい設定を試してみましょう: |
||
− | Java アプリケーションの新しいインスタンスを開いて変更をテストしましょう。 |
||
+ | |||
+ | _JAVA_OPTIONS=options exectuable |
||
+ | |||
+ | 変更を適用するには再ログインする必要があります。 |
||
=== フォントのヒンティング === |
=== フォントのヒンティング === |
2016年10月14日 (金) 23:58時点における版
ユーザーによってはデフォルトの Java フォントや Java アプリケーションのフォントの表示モードが気に入らないという人もいるでしょう。Oracle Java Runtime Environment (JRE) のフォント表示を改善する方法は複数存在します。これらの方法は別々に使うこともできますが、多くの場合まとめて使うことでより良い結果が得られるでしょう。
TrueType フォントは Java で一番良くサポートされているフォーマットです。
アンチエイリアス
フォントのアンチエイリアスは Linux の Oracle Java 1.6 及び OpenJDK で利用可能です。システム全体の設定でアンチエイリアスを使うには、次の行を /etc/environment
に追加してください:
export _JAVA_OPTIONS='-Dawt.useSystemAAFontSettings=setting'
setting
は以下の7つの値のどれか一つに置き換えて下さい:
設定 | 説明 |
---|---|
off , false , default
|
アンチエイリアスなし |
on
|
完全なアンチエイリアス |
gasp
|
フォントに埋め込まれたヒント情報を使う |
lcd , lcd_hrgb
|
多数派の LCD モニターにあわせてアンチエイリアスを調整する |
lcd_hbgr , lcd_vrgb , lcd_vbgr
|
もうひとつの LCD モニター設定 |
多くの場合 gasp
と lcd
の設定が上手く機能します。
任意で GTK のルックアンドフィールを使うには、代わりに下の行を .bashrc に追加してください。
_JAVA_OPTIONS='-Dswing.defaultlaf=com.sun.java.swing.plaf.gtk.GTKLookAndFeel'
コマンドラインで実行ファイルの前に変数を指定して新しい設定を試してみましょう:
_JAVA_OPTIONS=options exectuable
変更を適用するには再ログインする必要があります。
フォントのヒンティング
一部の Java アプリケーションにはヒンティングのシステム設定が反映されません。Java アプリを起動する前に、以下の環境変数のどれかを使ってみてください:
export FT2_SUBPIXEL_HINTING=0 # Classic mode export FT2_SUBPIXEL_HINTING=1 # Infinality mode export FT2_SUBPIXEL_HINTING=2 # Default mode
例えば、0
の場合 FreeType は太字でないフォントを使うようになります。
OpenJDK パッチ
Java のオプションを使って強制的にアンチエイリアスをかけても、ネイティブアプリケーションのアンチエイリアスよりかは品質で劣ります。AUR にある OpenJDK のパッチを使うことで改善することができます:
- パッチ適用済み (
--enable-infinality=yes
) の OpenJDK7 は jre7-openjdk-infinalityAUR でインストールできます。 - パッチ適用済みの OpenJDK8 は jre8-openjdk-infinalityAUR でインストールできます (Infinality 非公式リポジトリからインストールすることも可能です)。
パッチを適用したバージョンでは fontconfig と freetype の Infinality パッチを上手く混ぜ合わせています。標準の fontconfig API を使用しているため fontconfig-infinalityAUR に依存はしていません。
フォント選択
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/