# TextAttribute

public final class **TextAttribute** extends [AttributedCharacterIterator.Attribute](https://developers.google.com/j2objc/javadoc/jre/reference/java/text/AttributedCharacterIterator.Attribute.html)  
The `TextAttribute` class defines attribute keys and
attribute values used for text rendering.


`TextAttribute` instances are used as attribute keys to
identify attributes in classes handling text attributes. Other
constants defined in this class can be used as attribute values.


For each text attribute, the documentation provides:

- the type of its value,
- the relevant predefined constants, if any
- the default effect if the attribute is absent
- the valid values if there are limitations
- a description of the effect.


### Values

- The values of attributes must always be immutable.
- Where value limitations are given, any value outside of that set is reserved for future use; the value will be treated as the default.
- The value `null` is treated the same as the default value and results in the default behavior.
- If the value is not of the proper type, the attribute will be ignored.
- The identity of the value does not matter, only the actual value. For example, `TextAttribute.WEIGHT_BOLD` and `new Float(2.0)` indicate the same `WEIGHT`.
- Attribute values of type `Number` (used for `WEIGHT`, `WIDTH`, `POSTURE`, `SIZE`, `JUSTIFICATION`, and `TRACKING`) can vary along their natural range and are not restricted to the predefined constants. `Number.floatValue()` is used to get the actual value from the `Number`.
- The values for `WEIGHT`, `WIDTH`, and `POSTURE` are interpolated by the system, which can select the 'nearest available' font or use other techniques to approximate the user's request.

<br />

### Field Summary

|---|---|---|
| public static final [TextAttribute](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html) | [BACKGROUND](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#BACKGROUND) | Attribute key for the paint used to render the background of the text. |
| public static final [TextAttribute](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html) | [BIDI_EMBEDDING](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#BIDI_EMBEDDING) | Attribute key for the embedding level of the text. |
| public static final [TextAttribute](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html) | [CHAR_REPLACEMENT](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#CHAR_REPLACEMENT) | Attribute key for a user-defined glyph to display in lieu of the font's standard glyph for a character. |
| public static final [TextAttribute](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html) | [FAMILY](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#FAMILY) | Attribute key for the font name. |
| public static final [TextAttribute](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html) | [FONT](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#FONT) | Attribute key used to provide the font to use to render text. |
| public static final [TextAttribute](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html) | [FOREGROUND](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#FOREGROUND) | Attribute key for the paint used to render the text. |
| public static final [TextAttribute](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html) | [INPUT_METHOD_HIGHLIGHT](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#INPUT_METHOD_HIGHLIGHT) | Attribute key for input method highlight styles. |
| public static final [TextAttribute](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html) | [INPUT_METHOD_UNDERLINE](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#INPUT_METHOD_UNDERLINE) | Attribute key for input method underlines. |
| public static final [TextAttribute](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html) | [JUSTIFICATION](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#JUSTIFICATION) | Attribute key for the justification of a paragraph. |
| public static final [Float](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Float.html) | [JUSTIFICATION_FULL](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#JUSTIFICATION_FULL) | Justify the line to the full requested width. |
| public static final [Float](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Float.html) | [JUSTIFICATION_NONE](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#JUSTIFICATION_NONE) | Do not allow the line to be justified. |
| public static final [TextAttribute](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html) | [KERNING](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#KERNING) | Attribute key to request kerning. |
| public static final [Integer](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Integer.html) | [KERNING_ON](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#KERNING_ON) | Request standard kerning. |
| public static final [TextAttribute](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html) | [LIGATURES](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#LIGATURES) | Attribute key for enabling optional ligatures. |
| public static final [Integer](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Integer.html) | [LIGATURES_ON](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#LIGATURES_ON) | Request standard optional ligatures. |
| public static final [TextAttribute](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html) | [NUMERIC_SHAPING](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#NUMERIC_SHAPING) | Attribute key for converting ASCII decimal digits to other decimal ranges. |
| public static final [TextAttribute](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html) | [POSTURE](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#POSTURE) | Attribute key for the posture of a font. |
| public static final [Float](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Float.html) | [POSTURE_OBLIQUE](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#POSTURE_OBLIQUE) | The standard italic posture. |
| public static final [Float](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Float.html) | [POSTURE_REGULAR](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#POSTURE_REGULAR) | The standard posture, upright. |
| public static final [TextAttribute](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html) | [RUN_DIRECTION](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#RUN_DIRECTION) | Attribute key for the run direction of the line. |
| public static final [Boolean](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Boolean.html) | [RUN_DIRECTION_LTR](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#RUN_DIRECTION_LTR) | Left-to-right run direction. |
| public static final [Boolean](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Boolean.html) | [RUN_DIRECTION_RTL](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#RUN_DIRECTION_RTL) | Right-to-left run direction. |
| public static final [TextAttribute](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html) | [SIZE](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#SIZE) | Attribute key for the font size. |
| public static final [TextAttribute](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html) | [STRIKETHROUGH](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#STRIKETHROUGH) | Attribute key for strikethrough. |
| public static final [Boolean](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Boolean.html) | [STRIKETHROUGH_ON](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#STRIKETHROUGH_ON) | A single strikethrough. |
| public static final [TextAttribute](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html) | [SUPERSCRIPT](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#SUPERSCRIPT) | Attribute key for superscripting and subscripting. |
| public static final [Integer](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Integer.html) | [SUPERSCRIPT_SUB](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#SUPERSCRIPT_SUB) | Standard subscript. |
| public static final [Integer](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Integer.html) | [SUPERSCRIPT_SUPER](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#SUPERSCRIPT_SUPER) | Standard superscript. |
| public static final [TextAttribute](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html) | [SWAP_COLORS](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#SWAP_COLORS) | Attribute key for swapping foreground and background `Paints`. |
| public static final [Boolean](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Boolean.html) | [SWAP_COLORS_ON](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#SWAP_COLORS_ON) | Swap foreground and background. |
| public static final [TextAttribute](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html) | [TRACKING](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#TRACKING) | Attribute key to control tracking. |
| public static final [Float](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Float.html) | [TRACKING_LOOSE](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#TRACKING_LOOSE) | Perform loose tracking. |
| public static final [Float](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Float.html) | [TRACKING_TIGHT](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#TRACKING_TIGHT) | Perform tight tracking. |
| public static final [TextAttribute](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html) | [TRANSFORM](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#TRANSFORM) | Attribute key for the transform of a font. |
| public static final [TextAttribute](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html) | [UNDERLINE](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#UNDERLINE) | Attribute key for underline. |
| public static final [Integer](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Integer.html) | [UNDERLINE_LOW_DASHED](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#UNDERLINE_LOW_DASHED) | Single pixel dashed low underline. |
| public static final [Integer](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Integer.html) | [UNDERLINE_LOW_DOTTED](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#UNDERLINE_LOW_DOTTED) | Single pixel dotted low underline. |
| public static final [Integer](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Integer.html) | [UNDERLINE_LOW_GRAY](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#UNDERLINE_LOW_GRAY) | Double pixel gray low underline. |
| public static final [Integer](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Integer.html) | [UNDERLINE_LOW_ONE_PIXEL](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#UNDERLINE_LOW_ONE_PIXEL) | Single pixel solid low underline. |
| public static final [Integer](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Integer.html) | [UNDERLINE_LOW_TWO_PIXEL](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#UNDERLINE_LOW_TWO_PIXEL) | Double pixel solid low underline. |
| public static final [Integer](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Integer.html) | [UNDERLINE_ON](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#UNDERLINE_ON) | Standard underline. |
| public static final [TextAttribute](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html) | [WEIGHT](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#WEIGHT) | Attribute key for the weight of a font. |
| public static final [Float](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Float.html) | [WEIGHT_BOLD](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#WEIGHT_BOLD) | The standard bold weight. |
| public static final [Float](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Float.html) | [WEIGHT_DEMIBOLD](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#WEIGHT_DEMIBOLD) | A moderately lighter weight than `WEIGHT_BOLD`. |
| public static final [Float](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Float.html) | [WEIGHT_DEMILIGHT](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#WEIGHT_DEMILIGHT) | An intermediate weight between `WEIGHT_LIGHT` and `WEIGHT_STANDARD`. |
| public static final [Float](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Float.html) | [WEIGHT_EXTRABOLD](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#WEIGHT_EXTRABOLD) | An extra heavy weight. |
| public static final [Float](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Float.html) | [WEIGHT_EXTRA_LIGHT](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#WEIGHT_EXTRA_LIGHT) | The lightest predefined weight. |
| public static final [Float](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Float.html) | [WEIGHT_HEAVY](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#WEIGHT_HEAVY) | A moderately heavier weight than `WEIGHT_BOLD`. |
| public static final [Float](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Float.html) | [WEIGHT_LIGHT](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#WEIGHT_LIGHT) | The standard light weight. |
| public static final [Float](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Float.html) | [WEIGHT_MEDIUM](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#WEIGHT_MEDIUM) | An intermediate weight between `WEIGHT_REGULAR` and `WEIGHT_BOLD`. |
| public static final [Float](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Float.html) | [WEIGHT_REGULAR](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#WEIGHT_REGULAR) | The standard weight. |
| public static final [Float](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Float.html) | [WEIGHT_SEMIBOLD](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#WEIGHT_SEMIBOLD) | A moderately heavier weight than `WEIGHT_REGULAR`. |
| public static final [Float](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Float.html) | [WEIGHT_ULTRABOLD](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#WEIGHT_ULTRABOLD) | The heaviest predefined weight. |
| public static final [TextAttribute](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html) | [WIDTH](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#WIDTH) | Attribute key for the width of a font. |
| public static final [Float](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Float.html) | [WIDTH_CONDENSED](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#WIDTH_CONDENSED) | The most condensed predefined width. |
| public static final [Float](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Float.html) | [WIDTH_EXTENDED](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#WIDTH_EXTENDED) | The most extended predefined width. |
| public static final [Float](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Float.html) | [WIDTH_REGULAR](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#WIDTH_REGULAR) | The standard width. |
| public static final [Float](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Float.html) | [WIDTH_SEMI_CONDENSED](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#WIDTH_SEMI_CONDENSED) | A moderately condensed width. |
| public static final [Float](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Float.html) | [WIDTH_SEMI_EXTENDED](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#WIDTH_SEMI_EXTENDED) | A moderately extended width. |

### Inherited Field Summary

From class [java.text.AttributedCharacterIterator.Attribute](https://developers.google.com/j2objc/javadoc/jre/reference/java/text/AttributedCharacterIterator.Attribute.html)

|---|---|---|
| public static final [AttributedCharacterIterator.Attribute](https://developers.google.com/j2objc/javadoc/jre/reference/java/text/AttributedCharacterIterator.Attribute.html) | [INPUT_METHOD_SEGMENT](https://developers.google.com/j2objc/javadoc/jre/reference/java/text/AttributedCharacterIterator.Attribute.html#INPUT_METHOD_SEGMENT) | Attribute key for input method segments. |
| public static final [AttributedCharacterIterator.Attribute](https://developers.google.com/j2objc/javadoc/jre/reference/java/text/AttributedCharacterIterator.Attribute.html) | [LANGUAGE](https://developers.google.com/j2objc/javadoc/jre/reference/java/text/AttributedCharacterIterator.Attribute.html#LANGUAGE) | Attribute key for the language of some text. |
| public static final [AttributedCharacterIterator.Attribute](https://developers.google.com/j2objc/javadoc/jre/reference/java/text/AttributedCharacterIterator.Attribute.html) | [READING](https://developers.google.com/j2objc/javadoc/jre/reference/java/text/AttributedCharacterIterator.Attribute.html#READING) | Attribute key for the reading of some text. |

### Protected Constructor Summary

|---|---|
|   | [TextAttribute](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#TextAttribute(java.lang.String))([String](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/String.html) name) Constructs a `TextAttribute` with the specified name. |

### Protected Method Summary

|---|---|
| [Object](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Object.html) | [readResolve](https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#readResolve())() Resolves instances being deserialized to the predefined constants. |

### Inherited Method Summary

From class [java.text.AttributedCharacterIterator.Attribute](https://developers.google.com/j2objc/javadoc/jre/reference/java/text/AttributedCharacterIterator.Attribute.html)

|---|---|
| final boolean | [equals](https://developers.google.com/j2objc/javadoc/jre/reference/java/text/AttributedCharacterIterator.Attribute.html#equals(java.lang.Object))([Object](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Object.html) obj) Compares two objects for equality. |
| [String](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/String.html) | [getName](https://developers.google.com/j2objc/javadoc/jre/reference/java/text/AttributedCharacterIterator.Attribute.html#getName())() Returns the name of the attribute. |
| final int | [hashCode](https://developers.google.com/j2objc/javadoc/jre/reference/java/text/AttributedCharacterIterator.Attribute.html#hashCode())() Returns a hash code value for the object. |
| [Object](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Object.html) | [readResolve](https://developers.google.com/j2objc/javadoc/jre/reference/java/text/AttributedCharacterIterator.Attribute.html#readResolve())() Resolves instances being deserialized to the predefined constants. |
| [String](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/String.html) | [toString](https://developers.google.com/j2objc/javadoc/jre/reference/java/text/AttributedCharacterIterator.Attribute.html#toString())() Returns a string representation of the object. |

From class [java.lang.Object](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Object.html)

|---|---|
| [Object](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Object.html) | [clone](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Object.html#clone())() Creates and returns a copy of this `Object`. |
| boolean | [equals](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Object.html#equals(java.lang.Object))([Object](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Object.html) obj) Compares this instance with the specified object and indicates if they are equal. |
| void | [finalize](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Object.html#finalize())() Invoked when the garbage collector has detected that this instance is no longer reachable. |
| final [Class](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Class.html)\<?\> | [getClass](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Object.html#getClass())() Returns the unique instance of `https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Class.html` that represents this object's class. |
| int | [hashCode](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Object.html#hashCode())() Returns an integer hash code for this object. |
| final void | [notify](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Object.html#notify())() Causes a thread which is waiting on this object's monitor (by means of calling one of the `wait()` methods) to be woken up. |
| final void | [notifyAll](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Object.html#notifyAll())() Causes all threads which are waiting on this object's monitor (by means of calling one of the `wait()` methods) to be woken up. |
| [String](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/String.html) | [toString](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Object.html#toString())() Returns a string containing a concise, human-readable description of this object. |
| final void | [wait](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Object.html#wait(long,%20int))(long timeout, int nanos) Causes the calling thread to wait until another thread calls the `notify()` or `notifyAll()` method of this object or until the specified timeout expires. |
| final void | [wait](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Object.html#wait(long))(long timeout) Causes the calling thread to wait until another thread calls the `notify()` or `notifyAll()` method of this object or until the specified timeout expires. |
| final void | [wait](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Object.html#wait())() Causes the calling thread to wait until another thread calls the `notify()` or `notifyAll()` method of this object. |

## Fields

#### public static final TextAttribute
**BACKGROUND**

Attribute key for the paint used to render the background of
the text. Values are instances of **`Paint`**.
The default value is null, indicating that the background
should not be rendered.

The logical bounds of the text will be filled using this
`Paint`, and then the text will be rendered on top
of it (but see `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#SWAP_COLORS`).

The visual bounds of the text is extended to include the
logical bounds, if necessary. The outline is not affected.

##### See Also

- `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#SWAP_COLORS`

#### public static final TextAttribute
**BIDI_EMBEDDING**

Attribute key for the embedding level of the text. Values are
instances of **`Integer`** . The default value is
`null`, indicating that the the Bidirectional
algorithm should run without explicit embeddings.

Positive values 1 through 61 are *embedding* levels,
negative values -1 through -61 are *override* levels.
The value 0 means that the base line direction is used. These
levels are passed in the embedding levels array to the `https://developers.google.com/j2objc/javadoc/jre/reference/java/text/Bidi.html` constructor.

*Note:* When this attribute is present anywhere in
a paragraph, then any Unicode bidi control characters (RLO,
LRO, RLE, LRE, and PDF) in the paragraph are
disregarded, and runs of text where this attribute is not
present are treated as though it were present and had the value
0.

##### See Also

- `https://developers.google.com/j2objc/javadoc/jre/reference/java/text/Bidi.html`

#### public static final TextAttribute
**CHAR_REPLACEMENT**

Attribute key for a user-defined glyph to display in lieu
of the font's standard glyph for a character. Values are
intances of GraphicAttribute. The default value is null,
indicating that the standard glyphs provided by the font
should be used.

This attribute is used to reserve space for a graphic or
other component embedded in a line of text. It is required for
correct positioning of 'inline' components within a line when
bidirectional reordering (see `https://developers.google.com/j2objc/javadoc/jre/reference/java/text/Bidi.html`) is
performed. Each character (Unicode code point) will be
rendered using the provided GraphicAttribute. Typically, the
characters to which this attribute is applied should be
`\uFFFC`.

The GraphicAttribute determines the logical and visual
bounds of the text; the actual Font values are ignored.

#### public static final TextAttribute
**FAMILY**

Attribute key for the font name. Values are instances of
**`String`** . The default value is
`"Default"`, which causes the platform default font
family to be used.

The `Font` class defines constants for the logical
font names.

This defines the value passed as `name` to the
`Font` constructor. Both logical and physical
font names are allowed. If a font with the requested name
is not found, the default font is used.

*Note:* This attribute is unfortunately misnamed, as
it specifies the face name and not just the family. Thus
values such as "Lucida Sans Bold" will select that face if it
exists. Note, though, that if the requested face does not
exist, the default will be used with *regular* weight.
The "Bold" in the name is part of the face name, not a separate
request that the font's weight be bold.

<br />

#### public static final TextAttribute
**FONT**

Attribute key used to provide the font to use to render text.

The default
value is null, indicating that normal resolution of a
`Font` from attributes should be performed.

`TextLayout` and
`AttributedCharacterIterator` work in terms of
`Maps` of `TextAttributes`. Normally,
all the attributes are examined and used to select and
configure a `Font` instance. If a `FONT`
attribute is present, though, its associated `Font`
will be used. This provides 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.

`FONT` is used for special situations where
clients already have a `Font` instance but still
need to use `Map`-based APIs. Typically, there will
be no other attributes in the `Map` except the
`FONT` attribute. With `Map`-based APIs
the common case is to specify all attributes individually, so
`FONT` is not needed or desireable.

However, if both `FONT` and other attributes are
present in the `Map`, the rendering system will
merge the attributes defined in the `Font` with the
additional attributes. This merging process classifies
`TextAttributes` into two groups. One group, the
'primary' group, is considered fundamental to the selection and
metric behavior of a font. These attributes are
`FAMILY`, `WEIGHT`, `WIDTH`,
`POSTURE`, `SIZE`,
`TRANSFORM`, `SUPERSCRIPT`, and
`TRACKING`. The other group, the 'secondary' group,
consists of all other defined attributes, with the exception of
`FONT` itself.

To generate the new `Map`, first the
`Font` is obtained from the `FONT`
attribute, and *all* of its attributes extracted into a
new `Map`. Then only the *secondary*
attributes from the original `Map` are added to
those in the new `Map`. Thus the values of primary
attributes come solely from the `Font`, and the
values of secondary attributes originate with the
`Font` but can be overridden by other values in the
`Map`.

#### public static final TextAttribute
**FOREGROUND**

Attribute key for the paint used to render the text. Values are
instances of **`Paint`** . The default value is
null, indicating that the `Paint` set on the
`Graphics2D` at the time of rendering is used.

Glyphs will be rendered using this
`Paint` regardless of the `Paint` value
set on the `Graphics` (but see `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#SWAP_COLORS`).

##### See Also

- `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#SWAP_COLORS`

#### public static final TextAttribute
**INPUT_METHOD_HIGHLIGHT**

Attribute key for input method highlight styles.

The default value is `null`,
which means that input method styles should not be applied
before rendering.

##### See Also

- `https://developers.google.com/j2objc/javadoc/jre/reference/java/text/Annotation.html`

#### public static final TextAttribute
**INPUT_METHOD_UNDERLINE**

Attribute key for input method underlines. Values
are instances of **`Integer`** . The default
value is `-1`, which means no underline.

Several constant values are provided, see `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#UNDERLINE_LOW_ONE_PIXEL`, `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#UNDERLINE_LOW_TWO_PIXEL`,
`https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#UNDERLINE_LOW_DOTTED`, `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#UNDERLINE_LOW_GRAY`, and
`https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#UNDERLINE_LOW_DASHED`.

This may be used in conjunction with `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#UNDERLINE` if
desired. The primary purpose is for use by input methods.
Other use of these underlines for simple ornamentation might
confuse users.

The input method underline affects both the visual bounds and
the outline of the text.

#### public static final TextAttribute
**JUSTIFICATION**

Attribute key for the justification of a paragraph. Values are
instances of **`Number`**. The default value is
1, indicating that justification should use the full width
provided. Values are pinned to the range \[0..1\].

The constants `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#JUSTIFICATION_FULL` and `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#JUSTIFICATION_NONE` are provided.

Specifies the fraction of the extra space to use when
justification is requested on a `TextLayout`. For
example, if the line is 50 points wide and it is requested to
justify to 70 points, a value of 0.75 will pad to use
three-quarters of the remaining space, or 15 points, so that
the resulting line will be 65 points in length.

*Note:* This should have the same value for all the
text in a paragraph, otherwise the behavior is undetermined.

#### public static final [Float](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Float.html)
**JUSTIFICATION_FULL**

Justify the line to the full requested width. This is the
default value for `JUSTIFICATION`.

##### See Also

- `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#JUSTIFICATION`

#### public static final [Float](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Float.html)
**JUSTIFICATION_NONE**

Do not allow the line to be justified.

##### See Also

- `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#JUSTIFICATION`

#### public static final TextAttribute
**KERNING**

Attribute key to request kerning. Values are instances of
**`Integer`** . The default value is
`0`, which does not request kerning.

The constant value `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#KERNING_ON` is provided.

The default advances of single characters are not
appropriate for some character sequences, for example "To" or
"AWAY". Without kerning the adjacent characters appear to be
separated by too much space. Kerning causes selected sequences
of characters to be spaced differently for a more pleasing
visual appearance.

#### public static final [Integer](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Integer.html)
**KERNING_ON**

Request standard kerning.

##### See Also

- `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#KERNING`

#### public static final TextAttribute
**LIGATURES**

Attribute key for enabling optional ligatures. Values are
instances of **`Integer`** . The default value is
`0`, which means do not use optional ligatures.

The constant value `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#LIGATURES_ON` is defined.

Ligatures required by the writing system are always enabled.

#### public static final [Integer](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Integer.html)
**LIGATURES_ON**

Request standard optional ligatures.

##### See Also

- `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#LIGATURES`

#### public static final TextAttribute
**NUMERIC_SHAPING**

Attribute key for converting ASCII decimal digits to other
decimal ranges. Values are instances of `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/NumericShaper.html`.
The default is `null`, which means do not perform
numeric shaping.

When a numeric shaper is defined, the text is first
processed by the shaper before any other analysis of the text
is performed.

*Note:* This should have the same value for all the
text in the paragraph, otherwise the behavior is undetermined.

##### See Also

- `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/NumericShaper.html`

#### public static final TextAttribute
**POSTURE**

Attribute key for the posture of a font. Values are instances
of **`Number`** . The default value is
`POSTURE_REGULAR`.

Two constant values are provided, `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#POSTURE_REGULAR`
and `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#POSTURE_OBLIQUE`. The value
`POSTURE_OBLIQUE` corresponds to the style value
`Font.ITALIC` as passed to the `Font`
constructor.

The value is roughly the slope of the stems of the font,
expressed as the run over the rise. Positive values lean right.

The system can interpolate the provided value.

This will affect the font's italic angle as returned by
`Font.getItalicAngle`.

#### public static final [Float](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Float.html)
**POSTURE_OBLIQUE**

The standard italic posture.

##### See Also

- `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#POSTURE`

#### public static final [Float](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Float.html)
**POSTURE_REGULAR**

The standard posture, upright. This is the default value for
`POSTURE`.

##### See Also

- `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#POSTURE`

#### public static final TextAttribute
**RUN_DIRECTION**

Attribute key for the run direction of the line. Values are
instances of **`Boolean`** . The default value is
null, which indicates that the standard Bidi algorithm for
determining run direction should be used with the value `https://developers.google.com/j2objc/javadoc/jre/reference/java/text/Bidi.html#DIRECTION_DEFAULT_LEFT_TO_RIGHT`.

The constants `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#RUN_DIRECTION_RTL` and `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#RUN_DIRECTION_LTR` are provided.

This determines the value passed to the `https://developers.google.com/j2objc/javadoc/jre/reference/java/text/Bidi.html` constructor to select the primary direction of
the text in the paragraph.

*Note:* This attribute should have the same value for
all the text in a paragraph, otherwise the behavior is
undetermined.

##### See Also

- `https://developers.google.com/j2objc/javadoc/jre/reference/java/text/Bidi.html`

#### public static final [Boolean](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Boolean.html)
**RUN_DIRECTION_LTR**

Left-to-right run direction.

##### See Also

- `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#RUN_DIRECTION`

#### public static final [Boolean](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Boolean.html)
**RUN_DIRECTION_RTL**

Right-to-left run direction.

##### See Also

- `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#RUN_DIRECTION`

#### public static final TextAttribute
**SIZE**

Attribute key for the font size. Values are instances of
**`Number`**. The default value is 12pt.

This corresponds to the `size` parameter to the
`Font` constructor.

Very large or small sizes will impact rendering performance,
and the rendering system might not render text at these sizes.
Negative sizes are illegal and result in the default 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.

#### public static final TextAttribute
**STRIKETHROUGH**

Attribute key for strikethrough. Values are instances of
**`Boolean`** . The default value is
`false`, which means no strikethrough.

The constant value `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#STRIKETHROUGH_ON` is provided.

The strikethrough affects both the visual bounds and the
outline of the text.

#### public static final [Boolean](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Boolean.html)
**STRIKETHROUGH_ON**

A single strikethrough.

##### See Also

- `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#STRIKETHROUGH`

#### public static final TextAttribute
**SUPERSCRIPT**

Attribute key for superscripting and subscripting. Values are
instances of **`Integer`**. The default value is
0, which means that no superscript or subscript is used.

Two constant values are provided, see `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#SUPERSCRIPT_SUPER` and `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#SUPERSCRIPT_SUB`. These have
the values 1 and -1 respectively. Values of
greater magnitude define greater levels of superscript or
subscripting, for example, 2 corresponds to super-superscript,
3 to super-super-superscript, and similarly for negative values
and subscript, up to a level of 7 (or -7). Values beyond this
range are reserved; behavior is platform-dependent.

`SUPERSCRIPT` can
impact the ascent and descent of a font. The ascent
and descent can never become negative, however.

#### public static final [Integer](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Integer.html)
**SUPERSCRIPT_SUB**

Standard subscript.

##### See Also

- `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#SUPERSCRIPT`

#### public static final [Integer](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Integer.html)
**SUPERSCRIPT_SUPER**

Standard superscript.

##### See Also

- `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#SUPERSCRIPT`

#### public static final TextAttribute
**SWAP_COLORS**

Attribute key for swapping foreground and background
`Paints`. Values are instances of
**`Boolean`** . The default value is
`false`, which means do not swap colors.

The constant value `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#SWAP_COLORS_ON` is defined.

If the `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#FOREGROUND` attribute is set, its
`Paint` will be used as the background, otherwise
the `Paint` currently on the `Graphics`
will be used. If the `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#BACKGROUND` attribute is set, its
`Paint` will be used as the foreground, otherwise
the system will find a contrasting color to the
(resolved) background so that the text will be visible.

##### See Also

- `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#FOREGROUND`
- `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#BACKGROUND`

#### public static final [Boolean](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Boolean.html)
**SWAP_COLORS_ON**

Swap foreground and background.

##### See Also

- `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#SWAP_COLORS`

#### public static final TextAttribute
**TRACKING**

Attribute key to control tracking. Values are instances of
**`Number`** . The default value is
`0`, which means no additional tracking.

The constant values `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#TRACKING_TIGHT` and `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#TRACKING_LOOSE` are provided.

The tracking value is multiplied by the font point size and
passed through the font transform to determine an additional
amount to add to the advance of each glyph cluster. Positive
tracking values will inhibit formation of optional ligatures.
Tracking values are typically between `-0.1` and
`0.3`; values outside this range are generally not
desireable.

#### public static final [Float](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Float.html)
**TRACKING_LOOSE**

Perform loose tracking.

##### See Also

- `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#TRACKING`

#### public static final [Float](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Float.html)
**TRACKING_TIGHT**

Perform tight tracking.

##### See Also

- `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#TRACKING`

#### public static final TextAttribute
**TRANSFORM**

Attribute key for the transform of a font. Values are
instances of **`TransformAttribute`** . The
default value is `TransformAttribute.IDENTITY`.

The primary intent is to support scaling and skewing, though
other effects are possible.

Some transforms will cause the baseline to be rotated and/or
shifted. The text and the baseline are transformed together so
that the text follows the new baseline. For example, with text
on a horizontal baseline, the new baseline follows the
direction of the unit x vector passed through the
transform. Text metrics are measured against this new baseline.
So, for example, with other things being equal, text rendered
with a rotated TRANSFORM and an unrotated TRANSFORM will measure as
having the same ascent, descent, and advance.

<br />

#### public static final TextAttribute
**UNDERLINE**

Attribute key for underline. Values are instances of
**`Integer`**. The default value is -1, which
means no underline.

The constant value `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#UNDERLINE_ON` is provided.

The underline affects both the visual bounds and the outline
of the text.

#### public static final [Integer](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Integer.html)
**UNDERLINE_LOW_DASHED**

Single pixel dashed low underline.

##### See Also

- `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#INPUT_METHOD_UNDERLINE`

#### public static final [Integer](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Integer.html)
**UNDERLINE_LOW_DOTTED**

Single pixel dotted low underline.

##### See Also

- `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#INPUT_METHOD_UNDERLINE`

#### public static final [Integer](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Integer.html)
**UNDERLINE_LOW_GRAY**

Double pixel gray low underline.

##### See Also

- `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#INPUT_METHOD_UNDERLINE`

#### public static final [Integer](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Integer.html)
**UNDERLINE_LOW_ONE_PIXEL**

Single pixel solid low underline.

##### See Also

- `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#INPUT_METHOD_UNDERLINE`

#### public static final [Integer](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Integer.html)
**UNDERLINE_LOW_TWO_PIXEL**

Double pixel solid low underline.

##### See Also

- `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#INPUT_METHOD_UNDERLINE`

#### public static final [Integer](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Integer.html)
**UNDERLINE_ON**

Standard underline.

##### See Also

- `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#UNDERLINE`

#### public static final TextAttribute
**WEIGHT**

Attribute key for the weight of a font. Values are instances
of **`Number`** . The default value is
`WEIGHT_REGULAR`.

Several constant values are provided, see `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#WEIGHT_EXTRA_LIGHT`, `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#WEIGHT_LIGHT`, `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#WEIGHT_DEMILIGHT`, `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#WEIGHT_REGULAR`, `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#WEIGHT_SEMIBOLD`, `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#WEIGHT_MEDIUM`, `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#WEIGHT_DEMIBOLD`, `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#WEIGHT_BOLD`, `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#WEIGHT_HEAVY`,
`https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#WEIGHT_EXTRABOLD`, and `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#WEIGHT_ULTRABOLD`. The
value `WEIGHT_BOLD` corresponds to the
style value `Font.BOLD` as passed to the
`Font` constructor.

The value is roughly the ratio of the stem width to that of
the regular weight.

The system can interpolate the provided value.

#### public static final [Float](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Float.html)
**WEIGHT_BOLD**

The standard bold weight.

##### See Also

- `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#WEIGHT`

#### public static final [Float](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Float.html)
**WEIGHT_DEMIBOLD**

A moderately lighter weight than `WEIGHT_BOLD`.

##### See Also

- `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#WEIGHT`

#### public static final [Float](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Float.html)
**WEIGHT_DEMILIGHT**

An intermediate weight between `WEIGHT_LIGHT` and
`WEIGHT_STANDARD`.

##### See Also

- `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#WEIGHT`

#### public static final [Float](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Float.html)
**WEIGHT_EXTRABOLD**

An extra heavy weight.

##### See Also

- `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#WEIGHT`

#### public static final [Float](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Float.html)
**WEIGHT_EXTRA_LIGHT**

The lightest predefined weight.

##### See Also

- `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#WEIGHT`

#### public static final [Float](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Float.html)
**WEIGHT_HEAVY**

A moderately heavier weight than `WEIGHT_BOLD`.

##### See Also

- `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#WEIGHT`

#### public static final [Float](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Float.html)
**WEIGHT_LIGHT**

The standard light weight.

##### See Also

- `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#WEIGHT`

#### public static final [Float](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Float.html)
**WEIGHT_MEDIUM**

An intermediate weight between `WEIGHT_REGULAR` and
`WEIGHT_BOLD`.

##### See Also

- `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#WEIGHT`

#### public static final [Float](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Float.html)
**WEIGHT_REGULAR**

The standard weight. This is the default value for `WEIGHT`.

##### See Also

- `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#WEIGHT`

#### public static final [Float](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Float.html)
**WEIGHT_SEMIBOLD**

A moderately heavier weight than `WEIGHT_REGULAR`.

##### See Also

- `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#WEIGHT`

#### public static final [Float](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Float.html)
**WEIGHT_ULTRABOLD**

The heaviest predefined weight.

##### See Also

- `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#WEIGHT`

#### public static final TextAttribute
**WIDTH**

Attribute key for the width of a font. Values are instances of
**`Number`** . The default value is
`WIDTH_REGULAR`.

Several constant values are provided, see `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#WIDTH_CONDENSED`, `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#WIDTH_SEMI_CONDENSED`, `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#WIDTH_REGULAR`, `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#WIDTH_SEMI_EXTENDED`, `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#WIDTH_EXTENDED`.

The value is roughly the ratio of the advance width to that
of the regular width.

The system can interpolate the provided value.

#### public static final [Float](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Float.html)
**WIDTH_CONDENSED**

The most condensed predefined width.

##### See Also

- `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#WIDTH`

#### public static final [Float](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Float.html)
**WIDTH_EXTENDED**

The most extended predefined width.

##### See Also

- `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#WIDTH`

#### public static final [Float](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Float.html)
**WIDTH_REGULAR**

The standard width. This is the default value for
`WIDTH`.

##### See Also

- `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#WIDTH`

#### public static final [Float](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Float.html)
**WIDTH_SEMI_CONDENSED**

A moderately condensed width.

##### See Also

- `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#WIDTH`

#### public static final [Float](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Float.html)
**WIDTH_SEMI_EXTENDED**

A moderately extended width.

##### See Also

- `https://developers.google.com/j2objc/javadoc/jre/reference/java/awt/font/TextAttribute.html#WIDTH`

## Protected Constructors

#### protected
**TextAttribute**
([String](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/String.html) name)

Constructs a `TextAttribute` with the specified name.

##### Parameters

| name | the attribute name to assign to this `TextAttribute` |
|---|---|

## Protected Methods

#### protected [Object](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Object.html)
**readResolve**
()

Resolves instances being deserialized to the predefined constants.

##### Returns

- the resolved `Attribute` object

##### Throws

| [InvalidObjectException](https://developers.google.com/j2objc/javadoc/jre/reference/java/io/InvalidObjectException.html) |   |
|---|---|