Difference between revisions of "Java Runtime Environment fonts"
Thisoldman (talk | contribs) m (→Java Fonts - Sun JRE) |
Thisoldman (talk | contribs) m (Minor format edit to improve the display) |
||
Line 6: | Line 6: | ||
{{Article summary end}} | {{Article summary end}} | ||
− | + | =Java Fonts - Sun JRE= | |
Some users may find the default Java fonts or the display mode of fonts in Java applications to be unpleasant. Several methods to improve the font display in the '''Sun Java Runtime Environment (JRE)'''[http://java.sun.com/javase/6/docs/technotes/guides/index.html#jre-jdk] are available. These methods may be used separately, but many users will find they achieve better results by combining them. | Some users may find the default Java fonts or the display mode of fonts in Java applications to be unpleasant. Several methods to improve the font display in the '''Sun Java Runtime Environment (JRE)'''[http://java.sun.com/javase/6/docs/technotes/guides/index.html#jre-jdk] are available. These methods may be used separately, but many users will find they achieve better results by combining them. | ||
Revision as of 15:35, 13 September 2009
Template:Article summary start Template:Article summary text Template:Article summary end
Contents
Java Fonts - Sun JRE
Some users may find the default Java fonts or the display mode of fonts in Java applications to be unpleasant. Several methods to improve the font display in the Sun Java Runtime Environment (JRE)[1] are available. These methods may be used separately, but many users will find they achieve better results by combining them.
TrueType fonts appear to be the best supported format for use with Java.
Anti-aliasing
Anti-aliasing[2] of fonts is available with Sun Java 1.6 on Linux. To do this on a per user basis, add the following line to the user's Template:Codeline.
export _JAVA_OPTIONS='-Dawt.useSystemAAFontSettings=setting'
Replace Template:Codeline with one of the following seven values: Template:Sn
- Template:Codeline or Template:Codeline or Template:Codeline -- No anti-aliasing
- Template:Codeline -- Full anti-aliasing
- Template:Codeline -- Use the font's built-in hinting instructions
- Template:Codeline or Template:Codeline -- Anti-aliasing tuned for many popular LCD monitors
- Template:Codeline -- Alternative LCD monitor setting
- Template:Codeline -- Alternative LCD monitor setting
- Template:Codeline -- Alternative LCD monitor setting
The Template:Codeline and Template:Codeline settings work well in many instances.
For the above change to take effect, Template:Codeline must be sourced as the normal user.
$ source ~/.bashrc
Open a new instance of a Java application to test the changes made.
Font Selection
TrueType Fonts
Some Java applications may specify use of a particular TrueType font; these applications must be made aware of the directory path to the desired font. TrueType fonts are installed in the directory Template:Codeline. Add the following line to Template:Codeline to enable these fonts.
export JAVA_FONTS=/usr/share/fonts/TTF
Source Template:Codeline as the normal user for the change to take effect.
$ source ~/.bashrc
Default Fonts
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 Template:Codeline.
As root, change directory to Template:Codeline. Copy Template:Codeline to Template:Codeline. Then, as root, open the new Template:Codeline in an editor.
# cd /opt/java/jre/lib # cp fontconfig.properties.src fontconfig.properties # nano fontconfig.properties ## Editor is the user's choice.
Note: Encodings other than Latin-1, or ISO 8859-1,[3] are shown in other Template:Codeline files in Template:Codeline. Some users will find these files to be better sources to use for editing. In all cases the edited file should be saved as Template:Codeline.
|
The Java font names in the configuration file are in the form of genericFontName.style.subset, for example,Template:Codeline. These generic fonts are mapped to the installed fonts using X Logical Font Description (XLFD)[4] names. The Template:Codeline, in the example below, is used as a placeholder in the XLFD name for the point size. The Java application replaces Template:Codeline at runtime.
serif.plain.latin-1=-b&h-lucidabright-medium-r-normal--*-%d-*-*-p-*-iso8859-1
Change the Lucida fonts named in the Template:Codeline file to your selected fonts using the XLFD names. Below is an excerpt of a Template:Codeline 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
After the changes have been saved to Template:Codeline, the editor may be closed and the user should drop root privileges. Open a new instance of a Java application to test the changes.