Styled text is essentially a simple text string drawn with a font.
The font defines the text string size, and its overall look and feel.
This lesson describes how to use the enhanced
java.awt.Font
class to create fonts.
The next lesson explains how to use fonts to create and draw styled text.
A font is a complete set of type in one point size and type face. For example, all English language characters and symbols in Helvetica 10 point bold face make up a font. The font defines the characteristic look, size, and style (bold, italics, or plain) of the text string that is drawn with the font.
How does a font define the characteristic look? A font is created from glyphs, and a glyph is a bitmapped image that defines the appearance of the characters or symbols in the font. All fonts within the same font family have a similar appearance because they are all made from the same glyph set. Likewise, different fonts families use different glyph sets to achieve their own distinguishing look.
A font family not only consists of fonts with a similar appearance, but also different points sizes and styles. Helvetica 10 point bold and Helvetica 12 point italic are two fonts in the same family, and Times Roman 8 point bold and Times Roman 10 point regular are two fonts in a different font family.
To use a font, you have to create a Font
object, and to do
that, you need to know what fonts are available on the system and
their names. Fonts have logical, family and font names.
The logical name is a name mapped onto one of the specific fonts
available on the platform.
To get the logical name for aFont
object, calljava.awt.Font.getName
.
The family name is the name of the font family that determines the typographic design across several faces, such as Helvetica or Times Roman.
To get the family name for a givenFont
object, calljava.awt.Font.getFamily
.
The font name represents a specific font within a family such as Helvetica Bold.
To get the font name, calljava.awt.Font.getFontName
, and to determine which font faces are available on a system, calljava.awt.GraphicsEnvironment.getAllFonts.
The easiest way to create a font is by specifying the font name, point
size, and style. Once you have a
Font
object, you can derive
any number of new Font
objects by calling
the Font.deriveFont
method on the existing font and specifying
a new point size, style, transform (position, slant, scale, or rotation), or
attribute map.
Font boldFont = new Font("Helvetica", Font.BOLD, 12); Font italicDerived = boldFont.deriveFont(Font.ITALIC, 12); Font plainDerived = boldFont.deriveFont(Font.PLAIN, 14);
Once you have a font, you can use it to create a TextLayout
object and draw styled text, which are the topics of the next lesson.
© 1994-2005 Sun Microsystems, Inc.