Класс FontRenderContext

public class FontRenderContext
extends Object

Класс FontRenderContext предназначен для хранения информации, необходимой для корректного измерения текста. Измерение текста может изменяться из-за правил, отображающих контуры на пиксели, и параметров отрисовки, заданных приложением.

Одной из такой информации является преобразование, которое масштабирует типографские точки в пиксели. (Точка определяется как ровно 1/72 дюйма, что немного отличается от традиционного механического измерения точки). Символ, отображаемый при 12pt на устройстве с разрешением 600 dpi, может иметь размер, отличный от того же символа, отображаемого при 12pt на устройстве с разрешением 72 dpi, из-за таких факторов, как округление до границ пикселей и подсказки, которые может указать дизайнер шрифта.

Анизотропная фильтрация и дробные метрики, заданные приложением, также могут повлиять на размер символа из-за округления до границ пикселей.

Обычно экземпляры FontRenderContext получаются из объекта Graphics2D. FontRenderContext, созданный напрямую, скорее всего, не будет представлять никакого реального графического устройства и может привести к неожиданным или неверным результатам.

См. также:
RenderingHints.KEY_TEXT_ANTIALIASING, RenderingHints.KEY_FRACTIONALMETRICS, Graphics2D.getFontRenderContext(), LineMetrics

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

Модификатор Конструктор Описание
protected FontRenderContext()

Создаёт новый объект FontRenderContext.

FontRenderContext​(AffineTransform tx, boolean isAntiAliased, boolean usesFractionalMetrics)

Создаёт объект FontRenderContext из необязательного AffineTransform и двух значений boolean, которые определяют, есть ли у вновь созданного объекта анизотропная фильтрация или дробные метрики.

FontRenderContext​(AffineTransform tx, Object aaHint, Object fmHint)

Создаёт объект FontRenderContext из необязательного AffineTransform и двух значений Object, которые определяют, есть ли у вновь созданного объекта анизотропная фильтрация или дробные метрики.

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

Модификатор и тип Метод Описание
boolean equals​(FontRenderContext rhs)

Возвращает true, если rhs имеет те же преобразования, анизотропную фильтрацию и дробные метрики, что и этот объект.

boolean equals​(Object obj)

Возвращает true, если obj является экземпляром FontRenderContext и имеет те же преобразования, анизотропную фильтрацию и дробные метрики, что и этот объект.

Object getAntiAliasingHint()

Возвращает подсказку режима рендеринга анизотропной фильтрации текста, используемую в этом объекте FontRenderContext.

Object getFractionalMetricsHint()

Возвращает подсказку режима рендеринга дробных метрик текста, используемую в этом объекте FontRenderContext.

AffineTransform getTransform()

Получает преобразование, которое используется для масштабирования типографских точек в пиксели в этом объекте FontRenderContext.

int getTransformType()

Возвращает целочисленный тип аффинного преобразования для этого объекта FontRenderContext, как указано в AffineTransform.getType()

int hashCode()

Возвращает хэш-код для этого FontRenderContext.

boolean isAntiAliased()

Возвращает булево значение, указывающее, задана ли какая-либо форма анизотропной фильтрации в этом объекте FontRenderContext.

boolean isTransformed()

Указывает, измеряет ли этот объект FontRenderContext текст в преобразованном контексте рендеринга.

boolean usesFractionalMetrics()

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

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

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

Конструкторы

FontRenderContext

protected FontRenderContext()

Создаёт новый объект FontRenderContext.

FontRenderContext

public FontRenderContext(AffineTransform tx,
                         boolean isAntiAliased,
                         boolean usesFractionalMetrics)

Создаёт объект FontRenderContext из необязательного AffineTransform и двух boolean значений, определяющих, имеет ли созданный объект антиалиасинг или дробные метрики. В каждом случае булевы значения true и false соответствуют значениям параметров рендеринга ON и OFF соответственно.

Для указания других значений параметров используйте конструктор, который задаёт значения параметров рендеринга в качестве параметров: FontRenderContext(AffineTransform, Object, Object).

Параметры:
tx - преобразование, используемое для масштабирования типографских единиц в пиксели в этом FontRenderContext. Если null, используется единичное преобразование.
isAntiAliased - определяет, имеет ли созданный объект антиалиасинг.
usesFractionalMetrics - определяет, имеет ли созданный объект дробные метрики.

FontRenderContext

public FontRenderContext(AffineTransform tx,
                         Object aaHint,
                         Object fmHint)

Создаёт объект FontRenderContext из необязательного AffineTransform и двух Object значений, определяющих, имеет ли созданный объект антиалиасинг или дробные метрики.

Параметры:
tx - преобразование, используемое для масштабирования типографских единиц в пиксели в этом FontRenderContext. Если null, используется единичное преобразование.
aaHint - одно из значений параметров рендеринга антиалиасинга текста, определённых в java.awt.RenderingHints. Любое другое значение вызовет IllegalArgumentException. VALUE_TEXT_ANTIALIAS_DEFAULT может быть указано, в этом случае используемый режим зависит от реализации.
fmHint - одно из значений параметров рендеринга дробных метрик текста, определённых в java.awt.RenderingHints. VALUE_FRACTIONALMETRICS_DEFAULT может быть указано, в этом случае используемый режим зависит от реализации. Любое другое значение вызовет IllegalArgumentException.
Исключения:
IllegalArgumentException - если параметры не являются допустимыми значениями.
С тех пор:
1.6

Методы

isTransformed

public boolean isTransformed()

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

Возвращает:
true если у этого объекта FontRenderContext есть атрибут AffineTransform, отличный от единичного. false в противном случае.
С тех пор:
1.6
См. также:
getTransform()

getTransformType

public int getTransformType()

Возвращает целочисленный тип аффинного преобразования для этого объекта FontRenderContext в соответствии с AffineTransform.getType()

Возвращает:
тип преобразования.
С тех пор:
1.6
См. также:
AffineTransform

getTransform

public AffineTransform getTransform()

Получает преобразование, используемое для масштабирования типографских единиц в пиксели в этом объекте FontRenderContext.

Возвращает:
преобразование этого объекта FontRenderContext.
См. также:
AffineTransform

isAntiAliased

public boolean isAntiAliased()

Возвращает булево значение, указывающее, задан ли в этом объекте FontRenderContext какой-либо антиалиасинг. Вызовите getAntiAliasingHint() для получения значения параметра рендеринга.

Возвращает:
true, если текст антиалиасирован в этом объекте FontRenderContext; false в противном случае.
См. также:
RenderingHints.KEY_TEXT_ANTIALIASING, FontRenderContext(AffineTransform,boolean,boolean), FontRenderContext(AffineTransform,Object,Object)

usesFractionalMetrics

public boolean usesFractionalMetrics()

Возвращает булево значение, определяющее, используется ли режим дробных метрик текста в этом объекте FontRenderContext. Вызовите getFractionalMetricsHint(), чтобы получить соответствующее значение параметра рендеринга.

Возвращает:
true, если вычисление должно быть выполнено с дробными метриками; false в противном случае. в этом объекте FontRenderContext.
См. также:
RenderingHints.KEY_FRACTIONALMETRICS, FontRenderContext(AffineTransform,boolean,boolean), FontRenderContext(AffineTransform,Object,Object)

getAntiAliasingHint

public Object getAntiAliasingHint()

Возвращает параметр рендеринга режима антиалиасинга текста, используемый в этом объекте FontRenderContext. Он будет одним из значений параметров рендеринга антиалиасинга текста, определённых в java.awt.RenderingHints.

Возвращает:
значение параметра рендеринга режима антиалиасинга текста, используемого в этом объекте FontRenderContext.
С тех пор:
1.6

getFractionalMetricsHint

public Object getFractionalMetricsHint()

Возвращает параметр рендеринга режима дробных метрик текста, используемый в этом объекте FontRenderContext. Он будет одним из значений параметров рендеринга дробных метрик текста, определённых в java.awt.RenderingHints.

Возвращает:
значение параметра рендеринга режима дробных метрик текста, используемого в этом объекте FontRenderContext.
С тех пор:
1.6

equals

public boolean equals(Object obj)

Возвращает true, если obj является экземпляром FontRenderContext и имеет такие же значения преобразования, антиалиасинга и дробных метрик, как и этот.

Переопределяет:
equals в классе Object
Параметры:
obj - объект для проверки на равенство
Возвращает:
true если указанный объект равен этому объекту FontRenderContext; false в противном случае.
См. также:
Object.hashCode(), HashMap

equals

public boolean equals(FontRenderContext rhs)

Возвращает true, если rhs имеет такие же значения преобразования, антиалиасинга и дробных метрик, как и этот.

Параметры:
rhs - объект FontRenderContext для проверки на равенство
Возвращает:
true если rhs равен этому объекту FontRenderContext; false в противном случае.
С тех пор:
1.4

hashCode

public int hashCode()

Возвращает хэш-код для этого FontRenderContext.

Переопределяет:
hashCode в классе Object
Возвращает:
значение хэш-кода для этого объекта.
См. также:
Object.equals(java.lang.Object), System.identityHashCode(java.lang.Object)

© 1993, 2020, 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/11/docs/api/java.desktop/java/awt/font/FontRenderContext.html

Spec-Zone .ru
спецификации, руководства, описания, API