|
JavaTM 2 Platform Standard Edition |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--java.text.AttributedCharacterIterator.Attribute | +--java.awt.font.TextAttribute
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:
null
value).
null
or not of the proper type
then it has the default effect. The effect of a particular value
can be interpolated, especially in the case of multiple master
fonts. This interpolation is done based on the nearest defined
constants above and below the request:interpolation = (request - below)/(above - below);
AttributedCharacterIterator
,
Font
, Serialized FormField Summary | |
static TextAttribute |
BACKGROUND
Attribute key for the background Paint adornment. |
static TextAttribute |
BIDI_EMBEDDING
Attribute key for the embedding level for nested bidirectional runs. |
static TextAttribute |
CHAR_REPLACEMENT
Attribute key for a user_defined glyph to display in the text in lieu of a character. |
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 paint adornment. |
static TextAttribute |
INPUT_METHOD_HIGHLIGHT
Attribute key for input method highlight styles. |
static TextAttribute |
JUSTIFICATION
Attribute key for the justification of a paragraph. |
static Float |
JUSTIFICATION_FULL
Justify the line to the full requested width. |
static Float |
JUSTIFICATION_NONE
Do not allow the line to be justified. |
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 |
RUN_DIRECTION
Attribute key for the run direction of the line. |
static Boolean |
RUN_DIRECTION_LTR
Left-to-right run direction. |
static Boolean |
RUN_DIRECTION_RTL
Right-to-left run direction. |
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 |
SUPERSCRIPT
Attribute key for super and subscripting. |
static Integer |
SUPERSCRIPT_SUB
Standard subscript. |
static Integer |
SUPERSCRIPT_SUPER
Standard superscript. |
static TextAttribute |
SWAP_COLORS
Attribute key for swapping foreground and background Paints (or Colors). |
static Boolean |
SWAP_COLORS_ON
Swap foreground and background. |
static TextAttribute |
TRANSFORM
Attribute key for the transform of a font. |
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. |
static TextAttribute |
WIDTH
Attribute key for the width of a font. |
static Float |
WIDTH_CONDENSED
The most condensed predefined width. |
static Float |
WIDTH_EXTENDED
The most extended predefined width. |
static Float |
WIDTH_REGULAR
The standard width. |
static Float |
WIDTH_SEMI_CONDENSED
A moderately condensed width. |
static Float |
WIDTH_SEMI_EXTENDED
A moderately extended width. |
Fields inherited from class java.text.AttributedCharacterIterator.Attribute |
INPUT_METHOD_SEGMENT,
LANGUAGE,
READING |
Constructor Summary | |
protected |
TextAttribute(String name)
Constructs a TextAttribute with the specified name. |
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 |
public static final TextAttribute FAMILY
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. |
public static final TextAttribute WEIGHT
Key |
WEIGHT |
---|---|
Value |
Float |
Constants |
WEIGHT_ULTRA_LIGHT = 0.25, 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. |
public static final Float WEIGHT_EXTRA_LIGHT
WEIGHT
public static final Float WEIGHT_LIGHT
WEIGHT
public static final Float WEIGHT_DEMILIGHT
WEIGHT
public static final Float WEIGHT_REGULAR
WEIGHT
public static final Float WEIGHT_SEMIBOLD
WEIGHT
public static final Float WEIGHT_MEDIUM
WEIGHT
public static final Float WEIGHT_DEMIBOLD
WEIGHT
public static final Float WEIGHT_BOLD
WEIGHT
public static final Float WEIGHT_HEAVY
WEIGHT
public static final Float WEIGHT_EXTRABOLD
WEIGHT
public static final Float WEIGHT_ULTRABOLD
WEIGHT
public static final TextAttribute WIDTH
Key |
WIDTH |
---|---|
Value |
Float |
Constants |
WIDTH_CONDENSED = 0.75, WIDTH_SEMI_CONDENSED = 0.875, WIDTH_REGULAR = 1.0, WIDTH_SEMI_EXTENDED = 1.25, WIDTH_EXTENDED = 1.5 |
Default |
WIDTH_REGULAR |
Description |
The value is roughly the ratio of the advance width to that of the regular width. If the font has a different value for specific constants, then the value is interpolated as described in the class description. |
Fallback |
If a Narrow font is available and matches, use that. Otherwise scale with a transform based on the value. |
public static final Float WIDTH_CONDENSED
WIDTH
public static final Float WIDTH_SEMI_CONDENSED
WIDTH
public static final Float WIDTH_REGULAR
WIDTH
public static final Float WIDTH_SEMI_EXTENDED
WIDTH
public static final Float WIDTH_EXTENDED
WIDTH
public static final TextAttribute POSTURE
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. Otherwise skew with a transform using the posture value interpreted as run/rise. |
Font.getItalicAngle()
public static final Float POSTURE_REGULAR
POSTURE
public static final Float POSTURE_OBLIQUE
POSTURE
public static final TextAttribute SIZE
Key |
SIZE |
---|---|
Value |
Float |
Default |
from System Properties |
Description |
Represents point size. Note that the appearance and metrics of a 12pt font with a 2X transform might be different than that of a 24 point font with no transform. |
Fallback |
Scale to provided size. |
public static final TextAttribute TRANSFORM
Key |
TRANSFORM |
---|---|
Value |
TransformAttribute |
Default |
Identity transform |
Description |
Used to transform glyphs rendered by this font. The primary intent is to support scaling, skewing, and translation. In general, large rotations do not produce very useful results. The transform modifies both the glyph and the advance. The translations in the transform are interpreted as a ratio of the point size. That is, with a point size of 12, a translation of 0.5 results in a movement of 6 points. The advance point of the transformed glyph is the transform of the advance point projected onto the baseline. If the advance ends up to the left (top) of the glyph origin, the two points are swapped.
Example one: The point size is 20, the original advance is 10.0, and the transform is a 60 degree counterclockwise rotation plus an offset up and to the right of 0.1, -0.1. The translation results in an offset of <2.0, -2.0>. The original advance point is <10.0, 0.0>; after the rotation it is <6.0, -8.0>; when adding the offset this becomes <8.0,-10.0>, when projecting on the (horizontal) baseline this becomes the new advance point: <8.0, 0.0>. The advance width is the distance from the origin to the advance point: 8.0. The rotated glyph is rendered two points up and to the right of its origin and rotated. This does not affect the baseline for subsequent glyphs. |
public static final TextAttribute SUPERSCRIPT
Key |
SUPERSCRIPT |
---|---|
Value |
Integer |
Constants |
SUPERSCRIPT_NONE = 0, SUPERSCRIPT_SUPER = 1, SUPERSCRIPT_SUB = -1 |
Default |
SUPERSCRIPT_NONE |
Description |
Requests that the font display the characters with glyphs at a particular superscript level: 0 = none, 1 = superscript, 2 = superscript of superscript,...-1 = subscript, -2 = subscript of subscript,... Requests that the font display text using default superscript (or subscript) glyphs and/or scaling. |
Fallback |
Use transform with translation of +/-1/2 and scale
of 2/3, progressively for each level. That is, for the transform at
level N (with N != 0): offset = sign(N)*1/2*(2/3)^(abs(N)-1) scale = (2/3)^abs(N) |
public static final Integer SUPERSCRIPT_SUPER
SUPERSCRIPT
public static final Integer SUPERSCRIPT_SUB
SUPERSCRIPT
public static final TextAttribute FONT
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. |
public static final TextAttribute CHAR_REPLACEMENT
Key |
CHAR_REPLACEMENT |
---|---|
Value |
GraphicAttribute |
Description |
Allows the user to specify an empty position plus metric information. This method is used to reserve space for a graphic or other embedded component. Required for correct BIDI position of 'inline' components within a line. An optional convenience method allows drawing for simple cases. Follows the Microsoft model: the character that this is applied to should be ?. |
public static final TextAttribute FOREGROUND
Key |
FOREGROUND |
---|---|
Value |
Paint |
Default |
Color.black |
Description |
Specify the foreground Paint (or Color) of the text. |
public static final TextAttribute BACKGROUND
Key |
BACKGROUND |
---|---|
Value |
Paint |
Default |
null |
Description |
Specify the background Paint (or Color) of the text. |
public static final TextAttribute UNDERLINE
Key |
UNDERLINE |
---|---|
Value |
Integer |
Constants |
UNDERLINE_ON = 0 |
Default |
none |
Description |
An embellishment added to the glyphs rendered by a font. |
Fallback |
public static final Integer UNDERLINE_ON
UNDERLINE
public static final TextAttribute STRIKETHROUGH
Key |
STRIKETHROUGH |
---|---|
Value |
Boolean |
Constants |
true = on, false = off |
Default |
off |
Description |
An embellishment added to the glyphs rendered by a font. |
public static final Boolean STRIKETHROUGH_ON
STRIKETHROUGH
public static final TextAttribute RUN_DIRECTION
Key |
RUN_DIRECTION |
---|---|
Value |
Boolean |
Constants |
RUN_DIRECTION_LTR = true, RUN_DIRECTION_RTL = false |
Default |
Use the default Unicode base direction from the BIDI algorithm. |
Description |
Specifies which base run direction to use when
positioning mixed directional runs within a paragraph. If this value is
RUN_DIRECTION_DEFAULT, This attribute should have the same value over the whole paragraph. |
public static final Boolean RUN_DIRECTION_LTR
RUN_DIRECTION
public static final Boolean RUN_DIRECTION_RTL
RUN_DIRECTION
public static final TextAttribute BIDI_EMBEDDING
Key |
BIDI_EMBEDDING |
---|---|
Value |
Integer |
Limits |
Positive values 1 through 15 are embedding
levels, negative values through -15 are override levels |
Default |
Use standard BIDI to compute levels from formatting characters in the text. |
Description |
Specifies the bidi embedding level of the character. When this attribute is present anywhere in a paragraph, then the Unicode characters RLO, LRO, RLE, LRE, PDF are disregarded in the BIDI analysis of that paragraph. See the Unicode Standard v. 2.0, section 3-11. |
public static final TextAttribute JUSTIFICATION
Key |
JUSTIFICATION |
---|---|
Value |
Float |
Limits |
0.0 through1.0 |
Default |
1.0 |
Description |
Specifies which fraction of the extra space to use when justification is requested. For example, if the line is 50 points wide and the margins are 70 points apart, a value of 0.5 means that the line is padded to reach a width of 60 points. This attribute should have the same value over the whole paragraph. |
public static final Float JUSTIFICATION_FULL
JUSTIFICATION
public static final Float JUSTIFICATION_NONE
JUSTIFICATION
public static final TextAttribute INPUT_METHOD_HIGHLIGHT
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.
InputMethodHighlight
public static final TextAttribute SWAP_COLORS
Values are instances of Boolean
.
The default is not to swap the foreground and background.
If the foreground and background attributes are both defined,
this causes them to be swapped when rendering text. If either is
defaulted, the exact effect is undefined--generally it will produce
an 'inverted' appearance.
public static final Boolean SWAP_COLORS_ON
Constructor Detail |
protected TextAttribute(String name)
TextAttribute
with the specified name.name
- the attribute name to assign to this
TextAttribute
Method Detail |
protected Object readResolve() throws InvalidObjectException
|
JavaTM 2 Platform Standard Edition |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |