Spec-Zone.ru › OpenJDK 25

Класс TextAttribute

java.lang.Object
java.text.AttributedCharacterIterator.Attribute
java.awt.font.TextAttribute
Все реализуемые интерфейсы:
Serializable
public final class TextAttribute extends AttributedCharacterIterator.Attribute
Класс TextAttribute определяет ключи и значения атрибутов, используемые для отображения текста.

Экземпляры TextAttribute используются в качестве ключей атрибутов для идентификации атрибутов в Font, TextLayout, AttributedCharacterIterator и других классах, обрабатывающих атрибуты текста. Другие константы, определённые в этом классе, можно использовать в качестве значений атрибутов.

Для каждого текстового атрибута в документации указаны:

  • тип его значения,
  • соответствующие предопределённые константы, если таковые имеются,
  • эффект по умолчанию, если атрибут отсутствует,
  • допустимые значения, если имеются ограничения,
  • описание эффекта.

Значения

  • Значения атрибутов всегда должны быть неизменяемыми.
  • Если указаны ограничения на значения, любое значение вне этого набора зарезервировано для будущего использования; такое значение будет обработано как значение по умолчанию.
  • Значение null обрабатывается так же, как значение по умолчанию, и приводит к поведению по умолчанию.
  • Если значение имеет неправильный тип, атрибут будет проигнорирован.
  • Идентичность значения не имеет значения, важно только само значение. Например, TextAttribute.WEIGHT_BOLD и Float.valueOf(2.0f) указывают на одно и то же WEIGHT.
  • Значения атрибутов типа Number (используемые для WEIGHT, WIDTH, POSTURE, SIZE, JUSTIFICATION и TRACKING) могут изменяться в естественном диапазоне и не ограничены предопределёнными константами. Для получения фактического значения из Number используется Number.floatValue().
  • Значения для WEIGHT, WIDTH и POSTURE интерполируются системой, которая может выбрать «ближайший доступный» шрифт или использовать другие методы для приблизительного выполнения запроса пользователя.

Сводка атрибутов

Ключ, тип значения, основные константы и поведение по умолчанию для всех TextAttributes
Ключ Тип значения Основные константы Значение по умолчанию
FAMILY String См. Font DIALOG, DIALOG_INPUT,
SERIF, SANS_SERIF и MONOSPACED.
"По умолчанию" (использовать шрифт платформы по умолчанию)
WEIGHT Number WEIGHT_REGULAR, WEIGHT_BOLD WEIGHT_REGULAR
WIDTH Number WIDTH_CONDENSED, WIDTH_REGULAR,
WIDTH_EXTENDED
WIDTH_REGULAR
POSTURE Number POSTURE_REGULAR, POSTURE_OBLIQUE POSTURE_REGULAR
SIZE Number нет 12.0
TRANSFORM TransformAttribute См. TransformAttribute IDENTITY TransformAttribute.IDENTITY
SUPERSCRIPT Integer SUPERSCRIPT_SUPER, SUPERSCRIPT_SUB 0 (использовать стандартные глифы и метрики)
FONT Font нет null (не переопределять выбор шрифта)
CHAR_REPLACEMENT GraphicAttribute нет null (отображать текст с помощью глифов шрифта)
FOREGROUND Paint нет null (использовать текущую краску графического контекста)
BACKGROUND Paint нет null (не отображать фон)
UNDERLINE Integer UNDERLINE_ON -1 (не отображать подчёркивание)
STRIKETHROUGH Boolean STRIKETHROUGH_ON false (не отображать зачёркивание)
RUN_DIRECTION Boolean RUN_DIRECTION_LTR
RUN_DIRECTION_RTL
null (использовать стандартное значение по умолчанию для Bidi)
BIDI_EMBEDDING Integer нет 0 (использовать направление базовой строки)
JUSTIFICATION Number JUSTIFICATION_FULL JUSTIFICATION_FULL
INPUT_METHOD_HIGHLIGHT InputMethodHighlight,
Annotation
(см. класс) null (не применять выделение метода ввода)
INPUT_METHOD_UNDERLINE Integer UNDERLINE_LOW_ONE_PIXEL,
UNDERLINE_LOW_TWO_PIXEL
-1 (не отображать подчёркивание)
SWAP_COLORS Boolean SWAP_COLORS_ON false (не менять цвета местами)
NUMERIC_SHAPING NumericShaper нет null (не преобразовывать цифры)
KERNING Integer KERNING_ON 0 (не запрашивать кернинг)
LIGATURES Integer LIGATURES_ON 0 (не формировать необязательные лигатуры)
TRACKING Number TRACKING_LOOSE, TRACKING_TIGHT 0 (не добавлять трекинг)
См. также:
  • Font
  • TextLayout
  • AttributedCharacterIterator
  • Сериализованная форма

Краткое описание полей

Модификатор и тип Поле Описание
static final TextAttribute BACKGROUND
Ключ атрибута для краски, используемой для отображения фона текста.
static final TextAttribute BIDI_EMBEDDING
Ключ атрибута для уровня вложенности текста.
static final TextAttribute CHAR_REPLACEMENT
Ключ атрибута для определённого пользователем глифа, отображаемого вместо стандартного глифа шрифта для символа.
static final TextAttribute FAMILY
Ключ атрибута для имени шрифта.
static final TextAttribute FONT
Ключ атрибута для указания шрифта, используемого для отображения текста.
static final TextAttribute FOREGROUND
Ключ атрибута для краски, используемой для отображения текста.
static final TextAttribute INPUT_METHOD_HIGHLIGHT
Ключ атрибута для стилей выделения метода ввода.
static final TextAttribute INPUT_METHOD_UNDERLINE
Ключ атрибута для подчёркиваний метода ввода.
static final TextAttribute JUSTIFICATION
Ключ атрибута для выравнивания абзаца.
static final Float JUSTIFICATION_FULL
Выровнять строку по всей запрошенной ширине.
static final Float JUSTIFICATION_NONE
Не допускать выравнивания строки по ширине.
static final TextAttribute KERNING
Ключ атрибута для запроса кернинга.
static final Integer KERNING_ON
Запросить стандартный кернинг.
static final TextAttribute LIGATURES
Ключ атрибута для включения необязательных лигатур.
static final Integer LIGATURES_ON
Запросить стандартные необязательные лигатуры.
static final TextAttribute NUMERIC_SHAPING
Ключ атрибута для преобразования десятичных цифр ASCII в цифры других десятичных диапазонов.
static final TextAttribute POSTURE
Ключ атрибута для начертания шрифта.
static final Float POSTURE_OBLIQUE
Стандартное курсивное начертание.
static final Float POSTURE_REGULAR
Стандартное прямое начертание.
static final TextAttribute RUN_DIRECTION
Ключ атрибута для направления текста в строке.
static final Boolean RUN_DIRECTION_LTR
Направление текста слева направо.
static final Boolean RUN_DIRECTION_RTL
Направление текста справа налево.
static final TextAttribute SIZE
Ключ атрибута для размера шрифта.
static final TextAttribute STRIKETHROUGH
Ключ атрибута для зачёркивания.
static final Boolean STRIKETHROUGH_ON
Одинарное зачёркивание.
static final TextAttribute SUPERSCRIPT
Ключ атрибута для верхнего и нижнего индексов.
static final Integer SUPERSCRIPT_SUB
Стандартный нижний индекс.
static final Integer SUPERSCRIPT_SUPER
Стандартный верхний индекс.
static final TextAttribute SWAP_COLORS
Ключ атрибута для перестановки местами цветов переднего плана и фона Paints.
static final Boolean SWAP_COLORS_ON
Поменять местами цвета переднего плана и фона.
static final TextAttribute TRACKING
Ключ атрибута для управления трекингом.
static final Float TRACKING_LOOSE
Выполнить разреженный трекинг.
static final Float TRACKING_TIGHT
Выполнить плотный трекинг.
static final TextAttribute TRANSFORM
Ключ атрибута для преобразования шрифта.
static final TextAttribute UNDERLINE
Ключ атрибута для подчёркивания.
static final Integer UNDERLINE_LOW_DASHED
Одинарное пунктирное подчёркивание снизу толщиной в один пиксель.
static final Integer UNDERLINE_LOW_DOTTED
Одинарное точечное подчёркивание снизу толщиной в один пиксель.
static final Integer UNDERLINE_LOW_GRAY
Двойное серое подчёркивание снизу толщиной в два пикселя.
static final Integer UNDERLINE_LOW_ONE_PIXEL
Одинарное сплошное подчёркивание снизу толщиной в один пиксель.
static final Integer UNDERLINE_LOW_TWO_PIXEL
Двойное сплошное подчёркивание снизу толщиной в два пикселя.
static final Integer UNDERLINE_ON
Стандартное подчёркивание.
static final TextAttribute WEIGHT
Ключ атрибута для толщины шрифта.
static final Float WEIGHT_BOLD
Стандартное полужирное начертание.
static final Float WEIGHT_DEMIBOLD
Умеренно более тонкое начертание, чем WEIGHT_BOLD.
static final Float WEIGHT_DEMILIGHT
Промежуточное начертание между WEIGHT_LIGHT и WEIGHT_STANDARD.
static final Float WEIGHT_EXTRA_LIGHT
Самое тонкое из предопределённых начертаний.
static final Float WEIGHT_EXTRABOLD
Сверхтяжёлое начертание.
static final Float WEIGHT_HEAVY
Умеренно более тяжёлое начертание, чем WEIGHT_BOLD.
static final Float WEIGHT_LIGHT
Стандартное лёгкое начертание.
static final Float WEIGHT_MEDIUM
Промежуточное начертание между WEIGHT_REGULAR и WEIGHT_BOLD.
static final Float WEIGHT_REGULAR
Стандартное начертание.
static final Float WEIGHT_SEMIBOLD
Умеренно более тяжёлое начертание, чем WEIGHT_REGULAR.
static final Float WEIGHT_ULTRABOLD
Самое тяжёлое из предопределённых начертаний.
static final TextAttribute WIDTH
Ключ атрибута для ширины шрифта.
static final Float WIDTH_CONDENSED
Самая узкая из предопределённых ширин.
static final Float WIDTH_EXTENDED
Самая широкая из предопределённых ширин.
static final Float WIDTH_REGULAR
Стандартная ширина.
static final Float WIDTH_SEMI_CONDENSED
Умеренно узкая ширина.
static final Float WIDTH_SEMI_EXTENDED
Умеренно широкая ширина.

Поля, объявленные в классе AttributedCharacterIterator.Attribute

INPUT_METHOD_SEGMENT, LANGUAGE, READING

Краткое описание конструкторов

TextAttribute(String name)
Модификатор Конструктор Описание
protected
Создаёт экземпляр TextAttribute с указанным именем.

Краткое описание методов

Модификатор и тип Метод Описание
protected Object readResolve()
Преобразует десериализуемые экземпляры в предопределённые константы.

Методы, объявленные в классе AttributedCharacterIterator.Attribute

equals, getName, hashCode, toString

Методы, объявленные в классе Object

clone, finalize, getClass, notify, notifyAll, wait, wait, wait

Подробное описание полей

FAMILY

public static final TextAttribute FAMILY
Ключ атрибута для имени шрифта. Значениями являются экземпляры String. Значение по умолчанию — "Default", что приводит к использованию семейства шрифтов платформы по умолчанию.

Класс Font определяет константы для логических имён шрифтов DIALOG, DIALOG_INPUT, SANS_SERIF, SERIF и MONOSPACED.

Определяет значение, передаваемое в качестве name конструктору Font. Допускаются как логические, так и физические имена шрифтов. Если шрифт с запрошенным именем не найден, используется шрифт по умолчанию.

Примечание: К сожалению, этот атрибут назван неверно, поскольку он задаёт имя начертания, а не только семейства. Поэтому при наличии начертания со значением вроде «Lucida Sans Bold» будет выбрано именно оно. Однако если запрошенного начертания нет, будет использован шрифт по умолчанию с обычной насыщенностью. Слово «Bold» в имени является частью имени начертания, а не отдельным запросом на полужирное начертание шрифта.

WEIGHT

public static final TextAttribute WEIGHT
Ключ атрибута для насыщенности шрифта. Значениями являются экземпляры Number. Значение по умолчанию — WEIGHT_REGULAR.

Предусмотрено несколько константных значений; см. WEIGHT_EXTRA_LIGHT, WEIGHT_LIGHT, WEIGHT_DEMILIGHT, WEIGHT_REGULAR, WEIGHT_SEMIBOLD, WEIGHT_MEDIUM, WEIGHT_DEMIBOLD, WEIGHT_BOLD, WEIGHT_HEAVY, WEIGHT_EXTRABOLD и WEIGHT_ULTRABOLD. Значение WEIGHT_BOLD соответствует значению стиля Font.BOLD, передаваемому конструктору Font.

Значение приблизительно равно отношению ширины штриха к ширине штриха обычной насыщенности.

Система может интерполировать заданное значение.

WEIGHT_EXTRA_LIGHT

public static final Float WEIGHT_EXTRA_LIGHT
Самая лёгкая из предопределённых насыщенностей.
См. также:
  • WEIGHT

WEIGHT_LIGHT

public static final Float WEIGHT_LIGHT
Стандартная лёгкая насыщенность.
См. также:
  • WEIGHT

WEIGHT_DEMILIGHT

public static final Float WEIGHT_DEMILIGHT
Промежуточная насыщенность между WEIGHT_LIGHT и WEIGHT_STANDARD.
См. также:
  • WEIGHT

WEIGHT_REGULAR

public static final Float WEIGHT_REGULAR
Стандартная насыщенность. Это значение по умолчанию для WEIGHT.
См. также:
  • WEIGHT

WEIGHT_SEMIBOLD

public static final Float WEIGHT_SEMIBOLD
Умеренно более высокая насыщенность, чем WEIGHT_REGULAR.
См. также:
  • WEIGHT

WEIGHT_MEDIUM

public static final Float WEIGHT_MEDIUM
Промежуточная насыщенность между WEIGHT_REGULAR и WEIGHT_BOLD.
См. также:
  • WEIGHT

WEIGHT_DEMIBOLD

public static final Float WEIGHT_DEMIBOLD
Умеренно более низкая насыщенность, чем WEIGHT_BOLD.
См. также:
  • WEIGHT

WEIGHT_BOLD

public static final Float WEIGHT_BOLD
Стандартная полужирная насыщенность.
См. также:
  • WEIGHT

WEIGHT_HEAVY

public static final Float WEIGHT_HEAVY
Умеренно более высокая насыщенность, чем WEIGHT_BOLD.
См. также:
  • WEIGHT

WEIGHT_EXTRABOLD

public static final Float WEIGHT_EXTRABOLD
Особо высокая насыщенность.
См. также:
  • WEIGHT

WEIGHT_ULTRABOLD

public static final Float WEIGHT_ULTRABOLD
Самая высокая из предопределённых насыщенностей.
См. также:
  • WEIGHT

WIDTH

public static final TextAttribute WIDTH
Ключ атрибута для ширины шрифта. Значениями являются экземпляры Number. Значение по умолчанию — WIDTH_REGULAR.

Предусмотрено несколько константных значений; см. WIDTH_CONDENSED, WIDTH_SEMI_CONDENSED, WIDTH_REGULAR, WIDTH_SEMI_EXTENDED, WIDTH_EXTENDED.

Значение приблизительно равно отношению ширины продвижения к ширине продвижения обычного начертания.

Система может интерполировать заданное значение.

WIDTH_CONDENSED

public static final Float WIDTH_CONDENSED
Самая узкая из предопределённых ширин.
См. также:
  • WIDTH

WIDTH_SEMI_CONDENSED

public static final Float WIDTH_SEMI_CONDENSED
Умеренно суженная ширина.
См. также:
  • WIDTH

WIDTH_REGULAR

public static final Float WIDTH_REGULAR
Стандартная ширина. Это значение по умолчанию для WIDTH.
См. также:
  • WIDTH

WIDTH_SEMI_EXTENDED

public static final Float WIDTH_SEMI_EXTENDED
Умеренно расширенная ширина.
См. также:
  • WIDTH

WIDTH_EXTENDED

public static final Float WIDTH_EXTENDED
Самая широкая из предопределённых ширин.
См. также:
  • WIDTH

POSTURE

public static final TextAttribute POSTURE
Ключ атрибута для наклона шрифта. Значениями являются экземпляры Number. Значение по умолчанию — POSTURE_REGULAR.

Предусмотрено два константных значения: POSTURE_REGULAR и POSTURE_OBLIQUE. Значение POSTURE_OBLIQUE соответствует значению стиля Font.ITALIC, передаваемому конструктору Font.

Значение приблизительно соответствует наклону штрихов шрифта, выраженному как отношение горизонтального смещения к вертикальному. Положительные значения задают наклон вправо.

Система может интерполировать заданное значение.

Это влияет на угол наклона шрифта, возвращаемый методом Font.getItalicAngle.

См. также:
  • Font.getItalicAngle()

POSTURE_REGULAR

public static final Float POSTURE_REGULAR
Стандартное, прямое начертание. Это значение по умолчанию для POSTURE.
См. также:
  • POSTURE

POSTURE_OBLIQUE

public static final Float POSTURE_OBLIQUE
Стандартное курсивное начертание.
См. также:
  • POSTURE

SIZE

public static final TextAttribute SIZE
Ключ атрибута для размера шрифта. Значениями являются экземпляры Number. Значение по умолчанию — 12 пт.

Соответствует параметру size конструктора Font.

Очень большие или маленькие размеры могут снижать производительность отображения, а система визуализации может не отображать текст таких размеров. Отрицательные размеры недопустимы; в этом случае используется размер по умолчанию.

Обратите внимание, что внешний вид и метрики шрифта размером 12 пт с преобразованием 2x могут отличаться от внешнего вида и метрик шрифта размером 24 пт без преобразования.

TRANSFORM

public static final TextAttribute TRANSFORM
Ключ атрибута для преобразования шрифта. Значениями являются экземпляры TransformAttribute. Значение по умолчанию — TransformAttribute.IDENTITY.

Класс TransformAttribute определяет константу IDENTITY.

Соответствует преобразованию, переданному в Font.deriveFont(AffineTransform). Поскольку это преобразование является изменяемым, а значения TextAttribute не должны быть изменяемыми, используется класс-обёртка TransformAttribute.

Основное назначение — поддержка масштабирования и наклона, хотя возможны и другие эффекты.

Некоторые преобразования приводят к повороту и/или смещению базовой линии. Текст и базовая линия преобразуются вместе, поэтому текст следует за новой базовой линией. Например, если текст расположен на горизонтальной базовой линии, новая базовая линия будет направлена вдоль единичного вектора x, преобразованного с помощью преобразования. Метрики текста измеряются относительно этой новой базовой линии. Поэтому, например, при прочих равных текст, отображаемый с повёрнутым TRANSFORM и без поворота TRANSFORM, будет иметь одинаковые высоту прописных, глубину и ширину продвижения.

В стилизованном тексте базовые линии каждого такого фрагмента выравниваются последовательно, что потенциально создаёт нелинейную базовую линию для всего фрагмента текста. Дополнительные сведения см. в разделе TextLayout.getLayoutPath().

См. также:
  • TransformAttribute
  • AffineTransform

SUPERSCRIPT

public static final TextAttribute SUPERSCRIPT
Ключ атрибута для надстрочного и подстрочного индексов. Значениями являются экземпляры Integer. Значение по умолчанию — 0, то есть надстрочный или подстрочный индекс не используется.

Предусмотрено два константных значения; см. SUPERSCRIPT_SUPER и SUPERSCRIPT_SUB. Их значения равны соответственно 1 и -1. Значения с большей абсолютной величиной задают более высокие уровни надстрочного или подстрочного индекса: например, 2 соответствует надстрочному индексу над надстрочным, 3 — надстрочному индексу над ним и так далее; аналогично для отрицательных значений и подстрочных индексов, вплоть до уровня 7 (или -7). Значения за пределами этого диапазона зарезервированы; поведение зависит от платформы.

SUPERSCRIPT может влиять на высоту прописных и глубину шрифта. Однако высота прописных и глубина не могут стать отрицательными.

SUPERSCRIPT_SUPER

public static final Integer SUPERSCRIPT_SUPER
Стандартный надстрочный индекс.
См. также:
  • SUPERSCRIPT

SUPERSCRIPT_SUB

public static final Integer SUPERSCRIPT_SUB
Стандартный подстрочный индекс.
См. также:
  • SUPERSCRIPT

FONT

public static final TextAttribute FONT
Ключ атрибута, используемый для задания шрифта, которым следует отображать текст. Значениями являются экземпляры Font. Значение по умолчанию — null, что указывает на необходимость обычного определения Font по атрибутам.

TextLayout и AttributedCharacterIterator работают с Maps объекта TextAttributes. Обычно все атрибуты проверяются и используются для выбора и настройки экземпляра Font. Однако если присутствует атрибут FONT, будет использоваться связанный с ним Font. Это позволяет пользователям переопределять преобразование атрибутов шрифта в Font или принудительно использовать конкретный экземпляр Font. Это также позволяет задавать подклассы Font в случаях, когда Font можно расширить.

FONT используется в особых случаях, когда клиенты уже располагают экземпляром Font, но им по-прежнему необходимо использовать API на основе Map. Обычно в Map не будет других атрибутов, кроме атрибута FONT. При использовании API на основе Map обычно задаются все атрибуты по отдельности, поэтому FONT не требуется и не рекомендуется.

Однако если в Map присутствуют как FONT, так и другие атрибуты, система визуализации объединит атрибуты, определённые в Font, с дополнительными атрибутами. В процессе объединения TextAttributes делятся на две группы. Первая группа, «основная», считается принципиально важной для выбора шрифта и определения его метрик. К этим атрибутам относятся FAMILY, WEIGHT, WIDTH, POSTURE, SIZE, TRANSFORM, SUPERSCRIPT и TRACKING. Вторая группа, «вторичная», включает все остальные определённые атрибуты, за исключением самого FONT.

Чтобы создать новый Map, сначала из атрибута FONT извлекается Font, после чего все его атрибуты копируются в новый Map. Затем к атрибутам нового Map добавляются только вторичные атрибуты исходного Map. Таким образом, значения основных атрибутов берутся только из Font, а значения вторичных атрибутов — из Font, но их можно переопределить другими значениями в Map.

Примечание: Конструктор на основе Font's Map и методы deriveFont не обрабатывают атрибут FONT, поскольку они используются для создания новых объектов Font. Для обработки атрибута FONT следует использовать метод Font.getFont(Map).

См. также:
  • Font

CHAR_REPLACEMENT

public static final TextAttribute CHAR_REPLACEMENT
Ключ атрибута для пользовательского глифа, отображаемого вместо стандартного глифа шрифта для символа. Значениями являются экземпляры GraphicAttribute. Значение по умолчанию — null, что указывает на использование стандартных глифов, предоставляемых шрифтом.

Этот атрибут используется для резервирования места под графический или другой компонент, встроенный в строку текста. Он необходим для правильного позиционирования «встроенных» компонентов в строке при выполнении двунаправленной переупорядоченности (см. Bidi). Каждый символ (кодовая точка Unicode) будет отображаться с помощью предоставленного GraphicAttribute. Как правило, символы, к которым применяется этот атрибут, должны быть \uFFFC.

GraphicAttribute определяет логические и визуальные границы текста; фактические значения Font игнорируются.

См. также:
  • GraphicAttribute

FOREGROUND

public static final TextAttribute FOREGROUND
Ключ атрибута для цвета, используемого при отображении текста. Значениями являются экземпляры Paint. Значение по умолчанию — null, что указывает на использование Paint, заданного для Graphics2D на момент отображения.

Глифы будут отображаться с использованием этого Paint независимо от значения Paint, заданного для Graphics (см. также SWAP_COLORS).

См. также:
  • Paint
  • SWAP_COLORS

BACKGROUND

public static final TextAttribute BACKGROUND
Ключ атрибута для цвета, используемого при отображении фона текста. Значениями являются экземпляры Paint. Значение по умолчанию — null, что указывает на то, что фон отображаться не должен.

Логические границы текста будут залиты этим Paint, после чего поверх них будет отображён текст (см. также SWAP_COLORS).

При необходимости визуальные границы текста расширяются, чтобы включить логические границы. Контур не изменяется.

См. также:
  • Paint
  • SWAP_COLORS

UNDERLINE

public static final TextAttribute UNDERLINE
Ключ атрибута для подчёркивания. Значениями являются экземпляры Integer. Значение по умолчанию — -1, что означает отсутствие подчёркивания.

Предусмотрено константное значение UNDERLINE_ON.

Подчёркивание влияет как на визуальные границы, так и на контур текста.

UNDERLINE_ON

public static final Integer UNDERLINE_ON
Стандартное подчёркивание.
См. также:
  • UNDERLINE

STRIKETHROUGH

public static final TextAttribute STRIKETHROUGH
Ключ атрибута для зачёркивания. Значениями являются экземпляры Boolean. Значение по умолчанию — false, что означает отсутствие зачёркивания.

Предусмотрено константное значение STRIKETHROUGH_ON.

Зачёркивание влияет как на визуальные границы, так и на контур текста.

STRIKETHROUGH_ON

public static final Boolean STRIKETHROUGH_ON
Одиночное зачёркивание.
См. также:
  • STRIKETHROUGH

RUN_DIRECTION

public static final TextAttribute RUN_DIRECTION
Ключ атрибута для направления фрагмента строки. Значениями являются экземпляры Boolean. Значение по умолчанию — null, что указывает на использование стандартного алгоритма Bidi для определения направления фрагмента со значением Bidi.DIRECTION_DEFAULT_LEFT_TO_RIGHT.

Предусмотрены константы RUN_DIRECTION_RTL и RUN_DIRECTION_LTR.

Определяет значение, передаваемое конструктору Bidi для выбора основного направления текста в абзаце.

Примечание: Для всего текста в абзаце должно быть задано одинаковое значение этого атрибута; в противном случае поведение не определено.

См. также:
  • Bidi

RUN_DIRECTION_LTR

public static final Boolean RUN_DIRECTION_LTR
Направление фрагмента слева направо.
См. также:
  • RUN_DIRECTION

RUN_DIRECTION_RTL

public static final Boolean RUN_DIRECTION_RTL
Направление фрагмента справа налево.
См. также:
  • RUN_DIRECTION

BIDI_EMBEDDING

public static final TextAttribute BIDI_EMBEDDING
Ключ атрибута для уровня вложенности текста. Значениями являются экземпляры Integer. Значение по умолчанию — null, указывающее на то, что двунаправленный алгоритм должен выполняться без явных уровней вложенности.

Положительные значения от 1 до 61 задают уровни вложения, отрицательные значения от -1 до -61 — уровни переопределения. Значение 0 означает, что используется направление базовой строки. Эти уровни передаются в массиве уровней вложенности конструктору Bidi.

Примечание: Если этот атрибут присутствует где-либо в абзаце, все управляющие символы двунаправленного текста Unicode (RLO, LRO, RLE, LRE и PDF) в абзаце игнорируются, а фрагменты текста, в которых этот атрибут отсутствует, обрабатываются так, как если бы он присутствовал со значением 0.

См. также:
  • Bidi

JUSTIFICATION

public static final TextAttribute JUSTIFICATION
Ключ атрибута для выравнивания абзаца. Значениями являются экземпляры Number. Значение по умолчанию — 1, что указывает на использование всей заданной ширины при выравнивании. Значения ограничиваются диапазоном [0..1].

Предусмотрены константы JUSTIFICATION_FULL и JUSTIFICATION_NONE.

Задаёт долю дополнительного пространства, используемого при выравнивании TextLayout. Например, если ширина строки составляет 50 пунктов, а её требуется выровнять до 70 пунктов, значение 0.75 добавит три четверти оставшегося пространства, то есть 15 пунктов, и итоговая длина строки составит 65 пунктов.

Примечание: Для всего текста в абзаце должно быть задано одинаковое значение; в противном случае поведение не определено.

См. также:
  • TextLayout.getJustifiedLayout(float)

JUSTIFICATION_FULL

public static final Float JUSTIFICATION_FULL
Выровнять строку по всей заданной ширине. Это значение по умолчанию для JUSTIFICATION.
См. также:
  • JUSTIFICATION

JUSTIFICATION_NONE

public static final Float JUSTIFICATION_NONE
Не выполнять выравнивание строки.
См. также:
  • JUSTIFICATION

INPUT_METHOD_HIGHLIGHT

public static final TextAttribute INPUT_METHOD_HIGHLIGHT
Ключ атрибута для стилей выделения метода ввода.

Значениями являются экземпляры InputMethodHighlight или Annotation. Значение по умолчанию — null, что означает, что стили метода ввода не применяются перед отображением.

Если соседние фрагменты текста с одинаковым InputMethodHighlight требуется отображать отдельно, InputMethodHighlights следует обернуть в экземпляры Annotation.

Выделение метода ввода используется во время составления текста методом ввода. Компоненты редактирования текста должны сохранять эти выделения, даже если обычно работают только с текстом без стилей, и предоставлять их процедурам рисования.

См. также:
  • Font
  • InputMethodHighlight
  • Annotation

INPUT_METHOD_UNDERLINE

public static final TextAttribute INPUT_METHOD_UNDERLINE
Ключ атрибута для подчёркиваний метода ввода. Значениями являются экземпляры Integer. Значение по умолчанию — -1, что означает отсутствие подчёркивания.

Предусмотрено несколько константных значений; см. UNDERLINE_LOW_ONE_PIXEL, UNDERLINE_LOW_TWO_PIXEL, UNDERLINE_LOW_DOTTED, UNDERLINE_LOW_GRAY и UNDERLINE_LOW_DASHED.

При необходимости этот атрибут можно использовать вместе с UNDERLINE. В первую очередь он предназначен для методов ввода. Использование этих подчёркиваний для простого украшения может сбить пользователей с толку.

Подчёркивание метода ввода влияет как на визуальные границы, так и на контур текста.

С версии:
1.3

UNDERLINE_LOW_ONE_PIXEL

public static final Integer UNDERLINE_LOW_ONE_PIXEL
Сплошное нижнее подчёркивание толщиной в один пиксель.
С версии:
1.3
См. также:
  • INPUT_METHOD_UNDERLINE

UNDERLINE_LOW_TWO_PIXEL

public static final Integer UNDERLINE_LOW_TWO_PIXEL
Сплошное нижнее подчеркивание толщиной в два пикселя.
Начиная с:
1.3
См. также:
  • INPUT_METHOD_UNDERLINE

UNDERLINE_LOW_DOTTED

public static final Integer UNDERLINE_LOW_DOTTED
Точечное нижнее подчеркивание толщиной в один пиксель.
Начиная с:
1.3
См. также:
  • INPUT_METHOD_UNDERLINE

UNDERLINE_LOW_GRAY

public static final Integer UNDERLINE_LOW_GRAY
Серое нижнее подчеркивание толщиной в два пикселя.
Начиная с:
1.3
См. также:
  • INPUT_METHOD_UNDERLINE

UNDERLINE_LOW_DASHED

public static final Integer UNDERLINE_LOW_DASHED
Штриховое нижнее подчеркивание толщиной в один пиксель.
Начиная с:
1.3
См. также:
  • INPUT_METHOD_UNDERLINE

SWAP_COLORS

public static final TextAttribute SWAP_COLORS
Ключ атрибута для обмена Paints переднего плана и фона. Значениями являются экземпляры Boolean. Значение по умолчанию — false, то есть цвета не меняются местами.

Определено константное значение SWAP_COLORS_ON.

Если задан атрибут FOREGROUND, его Paint будет использоваться в качестве фона; в противном случае будет использоваться Paint, имеющийся в данный момент на Graphics. Если задан атрибут BACKGROUND, его Paint будет использоваться в качестве цвета переднего плана; в противном случае система подберет контрастный цвет относительно (вычисленного) цвета фона, чтобы текст оставался видимым.

См. также:
  • FOREGROUND
  • BACKGROUND

SWAP_COLORS_ON

public static final Boolean SWAP_COLORS_ON
Поменять местами цвета переднего плана и фона.
Начиная с:
1.3
См. также:
  • SWAP_COLORS

NUMERIC_SHAPING

public static final TextAttribute NUMERIC_SHAPING
Ключ атрибута для преобразования десятичных цифр ASCII в другие диапазоны десятичных цифр. Значениями являются экземпляры NumericShaper. Значение по умолчанию — null, то есть числовое формообразование не выполняется.

Если задан преобразователь чисел, перед любым другим анализом текста он сначала обрабатывается этим преобразователем.

Примечание: Значение этого атрибута должно быть одинаковым для всего текста абзаца; в противном случае поведение не определено.

Начиная с:
1.4
См. также:
  • NumericShaper

KERNING

public static final TextAttribute KERNING
Ключ атрибута для включения кернинга. Значениями являются экземпляры Integer. Значение по умолчанию — 0, при котором кернинг не включается.

Предоставлено константное значение KERNING_ON.

Стандартные интервалы для отдельных символов не подходят для некоторых последовательностей, например «To» или «AWAY». Без кернинга кажется, что между соседними символами слишком большой интервал. Кернинг изменяет интервалы в выбранных последовательностях символов, улучшая их визуальное восприятие.

Начиная с:
1.6

KERNING_ON

public static final Integer KERNING_ON
Запросить стандартный кернинг.
Начиная с:
1.6
См. также:
  • KERNING

LIGATURES

public static final TextAttribute LIGATURES
Ключ атрибута для включения необязательных лигатур. Значениями являются экземпляры Integer. Значение по умолчанию — 0, то есть необязательные лигатуры не используются.

Определено константное значение LIGATURES_ON.

Лигатуры, обязательные для системы письменности, всегда включены.

Начиная с:
1.6

LIGATURES_ON

public static final Integer LIGATURES_ON
Запросить стандартные необязательные лигатуры.
Начиная с:
1.6
См. также:
  • LIGATURES

TRACKING

public static final TextAttribute TRACKING
Ключ атрибута для управления трекингом. Значениями являются экземпляры Number. Значение по умолчанию — 0, то есть дополнительный трекинг не применяется.

Предоставлены константные значения TRACKING_TIGHT и TRACKING_LOOSE.

Значение трекинга умножается на размер шрифта в пунктах, а затем преобразуется с помощью преобразования шрифта, чтобы определить дополнительную величину, прибавляемую к ширине каждой группы глифов. Положительные значения трекинга препятствуют образованию необязательных лигатур. Обычно значения трекинга находятся в диапазоне от -0.1 до 0.3; значения за пределами этого диапазона, как правило, нежелательны.

Начиная с:
1.6

TRACKING_TIGHT

public static final Float TRACKING_TIGHT
Выполнять плотный трекинг.
Начиная с:
1.6
См. также:
  • TRACKING

TRACKING_LOOSE

public static final Float TRACKING_LOOSE
Выполнять разреженный трекинг.
Начиная с:
1.6
См. также:
  • TRACKING

Краткое описание конструкторов

TextAttribute

protected TextAttribute(String name)
Создает TextAttribute с указанным именем.
Параметры:
name — имя атрибута, присваиваемое этому TextAttribute

Подробное описание методов

readResolve

protected Object readResolve() throws InvalidObjectException
Преобразует десериализуемые экземпляры в предопределенные константы.
Переопределяет:
readResolve в классе AttributedCharacterIterator.Attribute
Возвращает:
разрешенный объект Attribute
Вызывает исключение:
InvalidObjectException — если разрешаемый объект не является экземпляром Attribute

Сообщить об ошибке или предложить улучшение
Дополнительные справочные материалы по API и документацию для разработчиков см. в документации Java SE, содержащей более подробные описания для разработчиков, обзоры основных понятий, определения терминов, способы обхода проблем и примеры работающего кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или ее аффилированных лиц в США и других странах.
Авторские права © 1993, 2025, Oracle и/или ее аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/25/docs/api/java.desktop/java/awt/font/TextAttribute.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API