Use is subject to License Terms. Your use of this web site or any of its content or software indicates your agreement to be bound by these License Terms.

Copyright © 2006 Sun Microsystems, Inc. All rights reserved.

JSR 216 (Maintenance Release)

java.awt.font
Class TextAttribute

java.lang.Object
  extended byjava.text.AttributedCharacterIterator.Attribute
      extended byjava.awt.font.TextAttribute
All Implemented Interfaces:
Serializable

public final class TextAttribute
extends AttributedCharacterIterator.Attribute

The TextAttribute class defines attribute keys and attribute values used for text rendering.

TextAttribute instances are used as attribute keys to identify attributes in AttributedCharacterIterator, Font, and other classes handling text attributes. Other constants defined in this class are used as attribute values.

For each text attribute, the documentation describes:

Types of Values

Interpolation

See Also:
AttributedCharacterIterator, Font, Serialized Form

Field Summary
static TextAttribute FAMILY
          Attribute key for the unlocalized font family name.
static TextAttribute FONT
          Attribute key for the font to use to render text.
static TextAttribute FOREGROUND
          Attribute key for the foreground color adornment.
static TextAttribute INPUT_METHOD_HIGHLIGHT
          Attribute key for input method highlight styles.
static TextAttribute POSTURE
          Attribute key for the posture of a font.
static Float POSTURE_OBLIQUE
          The standard italic posture.
static Float POSTURE_REGULAR
          The standard posture, upright.
static TextAttribute SIZE
          Attribute key for the font size.
static TextAttribute STRIKETHROUGH
          Attribute key for the strikethrough adornment.
static Boolean STRIKETHROUGH_ON
          A single strikethrough.
static TextAttribute UNDERLINE
          Attribute key for underline adornments.
static Integer UNDERLINE_ON
          Standard underline at the roman baseline for roman text, and below the decenders for other text.
static TextAttribute WEIGHT
          Attribute key for the weight of a font.
static Float WEIGHT_BOLD
          The standard bold weight.
static Float WEIGHT_DEMIBOLD
          A moderately lighter weight than BOLD.
static Float WEIGHT_DEMILIGHT
          An intermediate weight between LIGHT and STANDARD.
static Float WEIGHT_EXTRA_LIGHT
          The lightest predefined weight.
static Float WEIGHT_EXTRABOLD
          An extra heavy weight.
static Float WEIGHT_HEAVY
          A moderately heavier weight than BOLD.
static Float WEIGHT_LIGHT
          The standard light weight.
static Float WEIGHT_MEDIUM
          An intermediate weight between the REGULAR and BOLD weights.
static Float WEIGHT_REGULAR
          The standard weight.
static Float WEIGHT_SEMIBOLD
          A moderately heavier weight than REGULAR.
static Float WEIGHT_ULTRABOLD
          The heaviest predefined weight.
 
Fields inherited from class java.text.AttributedCharacterIterator.Attribute
INPUT_METHOD_SEGMENT, LANGUAGE, READING
 
Method Summary
protected  Object readResolve()
          Resolves instances being deserialized to the predefined constants.
 
Methods inherited from class java.text.AttributedCharacterIterator.Attribute
equals, getName, hashCode, toString
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

FAMILY

public static final TextAttribute FAMILY
Attribute key for the unlocalized font family name.

Key

FAMILY

Value

String

Constants

"Serif", "SansSerif"

Default

Host default;

Description

The name of the font family. If the family name is not found, the default font is used. The name should not be the full font name or specify other attributes (such as the name "Helvetica Bold"). Such names might result in the default font if the name does not match a known family name.


WEIGHT

public static final TextAttribute WEIGHT
Attribute key for the weight of a font.

Key

WEIGHT

Value

Float

Constants

WEIGHT_EXTRA_LIGHT = 0.5,
WEIGHT_LIGHT = 0.75,
WEIGHT_DEMILIGHT = 0.875,
WEIGHT_REGULAR = 1.0,
WEIGHT_SEMIBOLD = 1.25,
WEIGHT_MEDIUM = 1.5,
WEIGHT_DEMIBOLD = 1.75,
WEIGHT_BOLD = 2.0,
WEIGHT_HEAVY = 2.25,
WEIGHT_EXTRABOLD = 2.5,
WEIGHT_ULTRABOLD = 2.75

Default

WEIGHT_REGULAR

Description

The value is roughly the ratio of the stem width to that of the regular weight. If the font has a different value for specific constants, then the value is interpolated as described in the class description.

Fallback

Currently none. However, in the future, shape manipulations might be
available to simulate weight variations for fonts that don't have them.


WEIGHT_EXTRA_LIGHT

public static final Float WEIGHT_EXTRA_LIGHT
The lightest predefined weight.

See Also:
WEIGHT

WEIGHT_LIGHT

public static final Float WEIGHT_LIGHT
The standard light weight.

See Also:
WEIGHT

WEIGHT_DEMILIGHT

public static final Float WEIGHT_DEMILIGHT
An intermediate weight between LIGHT and STANDARD.

See Also:
WEIGHT

WEIGHT_REGULAR

public static final Float WEIGHT_REGULAR
The standard weight. This weight is used if WEIGHT is unspecified.

See Also:
WEIGHT

WEIGHT_SEMIBOLD

public static final Float WEIGHT_SEMIBOLD
A moderately heavier weight than REGULAR.

See Also:
WEIGHT

WEIGHT_MEDIUM

public static final Float WEIGHT_MEDIUM
An intermediate weight between the REGULAR and BOLD weights.

See Also:
WEIGHT

WEIGHT_DEMIBOLD

public static final Float WEIGHT_DEMIBOLD
A moderately lighter weight than BOLD.

See Also:
WEIGHT

WEIGHT_BOLD

public static final Float WEIGHT_BOLD
The standard bold weight.

See Also:
WEIGHT

WEIGHT_HEAVY

public static final Float WEIGHT_HEAVY
A moderately heavier weight than BOLD.

See Also:
WEIGHT

WEIGHT_EXTRABOLD

public static final Float WEIGHT_EXTRABOLD
An extra heavy weight.

See Also:
WEIGHT

WEIGHT_ULTRABOLD

public static final Float WEIGHT_ULTRABOLD
The heaviest predefined weight.

See Also:
WEIGHT

POSTURE

public static final TextAttribute POSTURE
Attribute key for the posture of a font.

Key

POSTURE

Value

Float

Constants

POSTURE_REGULAR = 0,
POSTURE_OBLIQUE = 0.20

Default

POSTURE_REGULAR

Description

The value is interpreted generally as a skew slope, positive leans to the right. If the font has a different value for specific constants, then the value is interpolated as described in the class description. With fonts that have italic faces, not only the skew of the character changes, but also the letter shapes might change.
Notes:
To set the value by angle, use:
value = new Float(Math.tan(Math.PI*degrees/180.0)
To determine the angle from the value, use:
angle = Math.atan(value.floatValue())*180/Math.PI

Fallback

If an Oblique font is available and matches, use that.


POSTURE_REGULAR

public static final Float POSTURE_REGULAR
The standard posture, upright.

See Also:
POSTURE

POSTURE_OBLIQUE

public static final Float POSTURE_OBLIQUE
The standard italic posture.

See Also:
POSTURE

SIZE

public static final TextAttribute SIZE
Attribute key for the font size.

Key

SIZE

Value

Float

Default

from System Properties

Description

Represents point size.

Fallback

Currently None


FONT

public static final TextAttribute FONT
Attribute key for the font to use to render text.

Key

FONT

Value

Font

Default

None, perform default resolution

Description

A way for users to override the resolution of font attributes into a Font, or force use of a particular Font instance. This also allows users to specify subclasses of Font in cases where a Font can be subclassed.


FOREGROUND

public static final TextAttribute FOREGROUND
Attribute key for the foreground color adornment.

Key

FOREGROUND

Value

Color

Default

Color.black

Description

Specify the foreground Color of the text.


UNDERLINE

public static final TextAttribute UNDERLINE
Attribute key for underline adornments.

Key

UNDERLINE

Value

Integer

Constants

UNDERLINE_ON = 0

Default

none

Description

An embellishment added to the glyphs rendered by a font.

Fallback


UNDERLINE_ON

public static final Integer UNDERLINE_ON
Standard underline at the roman baseline for roman text, and below the decenders for other text.

See Also:
UNDERLINE

STRIKETHROUGH

public static final TextAttribute STRIKETHROUGH
Attribute key for the strikethrough adornment.

Key

STRIKETHROUGH

Value

Boolean

Constants

true = on, false = off

Default

off

Description

An embellishment added to the glyphs rendered by a font.


STRIKETHROUGH_ON

public static final Boolean STRIKETHROUGH_ON
A single strikethrough.

See Also:
STRIKETHROUGH

INPUT_METHOD_HIGHLIGHT

public static final TextAttribute INPUT_METHOD_HIGHLIGHT
Attribute key for input method highlight styles.

Values are instances of InputMethodHighlight. These instances should be wrapped in Annotation instances if segments need to be highlighted separately.

Input method highlights are used while text is being composed using an input method. Text editing components should retain them even if they generally only deal with unstyled text, and make them available to the drawing routines.

See Also:
InputMethodHighlight
Method Detail

readResolve

protected Object readResolve()
                      throws InvalidObjectException
Resolves instances being deserialized to the predefined constants.

Overrides:
readResolve in class AttributedCharacterIterator.Attribute
Throws:
InvalidObjectException

JSR 216 (Maintenance Release)

Copyright © 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to License Terms. Your use of this web site or any of its content or software indicates your agreement to be bound by these License Terms.

For more information, please consult the JSR 216 specification.