Класс GlyphVector

Все реализованные интерфейсы:
Cloneable
public abstract class GlyphVector
extends Object
implements Cloneable

Объект GlyphVector представляет собой коллекцию глифов, содержащую геометрическую информацию для размещения каждого глифа в преобразованном координатном пространстве, соответствующем устройству, на котором GlyphVector в конечном итоге отображается.

Объект GlyphVector не пытается интерпретировать последовательность глифов, которые он содержит. Взаимоотношения между соседними глифами в последовательности используются только для определения размещения глифов в визуальном координатном пространстве.

Экземпляры GlyphVector создаются с помощью Font.

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

Объект GlyphVector ассоциирован ровно с одним Font, и может предоставлять данные, полезные только в связи с этим Font. Кроме того, метрики, полученные из GlyphVector, как правило, не масштабируются геометрически, так как пикселизация и интервалы зависят от алгоритмов подгонки к сетке внутри Font. Для обеспечения точного измерения GlyphVector и его составных глифов, вы должны указать преобразование масштабирования, режим антиалиасинга и режим дробных метрик при создании GlyphVector. Эти характеристики могут быть получены с устройства назначения.

Для каждого глифа в GlyphVector вы можете получить:

  • положение глифа
  • преобразование, связанное с глифом
  • метрики глифа в контексте GlyphVector . Метрики глифа могут отличаться при различных преобразованиях, заданных приложением параметрах рендеринга и конкретном экземпляре глифа внутри GlyphVector.

Изменение данных, используемых для создания GlyphVector не изменяет состояние GlyphVector.

Предоставляются методы для изменения позиций глифов в GlyphVector. Эти методы наиболее подходят для приложений, выполняющих операции выравнивания для представления глифов.

Предоставляются методы для преобразования отдельных глифов в GlyphVector. Эти методы, прежде всего, полезны для специальных эффектов.

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

Предоставляются методы для возврата Shape для GlyphVector и для отдельных глифов в GlyphVector.

См. также:
Font, GlyphMetrics, TextLayout

Поля

Модификатор и тип Поле Описание
static int FLAG_COMPLEX_GLYPHS

Флаг, используемый с getLayoutFlags, указывающий, что этот GlyphVector имеет сложное отображение глиф-символ (которое не отображает глифы на символы один к одному в строго возрастающем или убывающем порядке, соответствующем направлению выполнения).

static int FLAG_HAS_POSITION_ADJUSTMENTS

Флаг, используемый с getLayoutFlags, указывающий, что этот GlyphVector имеет корректировки позиций.

static int FLAG_HAS_TRANSFORMS

Флаг, используемый с getLayoutFlags, указывающий, что этот GlyphVector имеет преобразования для каждого глифа.

static int FLAG_MASK

Маска поддерживаемых флагов из getLayoutFlags.

static int FLAG_RUN_RTL

Флаг, используемый с getLayoutFlags, указывающий, что этот GlyphVector имеет направление выполнения справа налево.

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

Конструктор Описание
GlyphVector()

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

Модификатор и тип Метод Описание
abstract boolean equals​(GlyphVector set)

Проверяет, равен ли указанный GlyphVector этому GlyphVector.

abstract Font getFont()

Возвращает Font , связанный с этим GlyphVector.

abstract FontRenderContext getFontRenderContext()

Возвращает FontRenderContext , связанный с этим GlyphVector.

int getGlyphCharIndex​(int glyphIndex)

Возвращает индекс символа указанного глифа.

int[] getGlyphCharIndices​(int beginGlyphIndex, int numEntries, int[] codeReturn)

Возвращает индексы символов указанных глифов.

abstract int getGlyphCode​(int glyphIndex)

Возвращает код глифа указанного глифа.

abstract int[] getGlyphCodes​(int beginGlyphIndex, int numEntries, int[] codeReturn)

Возвращает массив кодов глифов для указанных глифов.

abstract GlyphJustificationInfo getGlyphJustificationInfo​(int glyphIndex)

Возвращает информацию о выравнивании для глифа в указанном индексе в этом GlyphVector.

abstract Shape getGlyphLogicalBounds​(int glyphIndex)

Возвращает логические границы указанного глифа внутри этого GlyphVector.

abstract GlyphMetrics getGlyphMetrics​(int glyphIndex)

Возвращает метрики глифа в указанном индексе в этом GlyphVector.

abstract Shape getGlyphOutline​(int glyphIndex)

Возвращает Shape , внутренняя часть которого соответствует визуальному представлению указанного глифа внутри этого GlyphVector.

Shape getGlyphOutline​(int glyphIndex, float x, float y)

Возвращает Shape , внутренняя часть которого соответствует визуальному представлению указанного глифа внутри этого GlyphVector, смещенного по x, y.

Rectangle getGlyphPixelBounds​(int index, FontRenderContext renderFRC, float x, float y)

Возвращает пиксельные границы глифа в индексе, когда этот GlyphVector рендерится в Graphics с заданным FontRenderContext в заданном расположении.

abstract Point2D getGlyphPosition​(int glyphIndex)

Возвращает положение указанного глифа относительно начала этого GlyphVector.

abstract float[] getGlyphPositions​(int beginGlyphIndex, int numEntries, float[] positionReturn)

Возвращает массив позиций глифов для указанных глифов.

abstract AffineTransform getGlyphTransform​(int glyphIndex)

Возвращает преобразование указанного глифа внутри этого GlyphVector.

abstract Shape getGlyphVisualBounds​(int glyphIndex)

Возвращает визуальные границы указанного глифа внутри GlyphVector.

int getLayoutFlags()

Возвращает флаги, описывающие общее состояние GlyphVector.

abstract Rectangle2D getLogicalBounds()

Возвращает логические границы этого GlyphVector.

abstract int getNumGlyphs()

Возвращает количество глифов в этом GlyphVector.

abstract Shape getOutline()

Возвращает Shape , внутренняя часть которого соответствует визуальному представлению этого GlyphVector.

abstract Shape getOutline​(float x, float y)

Возвращает Shape , внутренняя часть которого соответствует визуальному представлению этого GlyphVector при рендеринге в x, y.

Rectangle getPixelBounds​(FontRenderContext renderFRC, float x, float y)

Возвращает пиксельные границы этого GlyphVector при рендеринге в графике с заданным FontRenderContext в заданном расположении.

abstract Rectangle2D getVisualBounds()

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

abstract void performDefaultLayout()

Назначает стандартные позиции каждому глифу в этом GlyphVector.

abstract void setGlyphPosition​(int glyphIndex, Point2D newPos)

Устанавливает положение указанного глифа внутри этого GlyphVector.

abstract void setGlyphTransform​(int glyphIndex, AffineTransform newTX)

Устанавливает преобразование указанного глифа внутри этого GlyphVector.

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

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

Поля

FLAG_HAS_TRANSFORMS

public static final int FLAG_HAS_TRANSFORMS

Флаг, используемый с getLayoutFlags, указывающий, что у этого GlyphVector есть преобразования для каждого глифа.

Since:
1.4
См. также:
Значения константных полей

FLAG_HAS_POSITION_ADJUSTMENTS

public static final int FLAG_HAS_POSITION_ADJUSTMENTS

Флаг, используемый с getLayoutFlags, указывающий, что у этого GlyphVector есть корректировки позиций. Когда это значение истинно, позиции глифов не совпадают с накопленными значениями по умолчанию для глифов (например, если была применена кернинг).

Since:
1.4
См. также:
Значения константных полей

FLAG_RUN_RTL

public static final int FLAG_RUN_RTL

Флаг, используемый с getLayoutFlags, указывающий, что у этого GlyphVector есть направление пробега справа налево. Это относится к отображению глифов в символы и не подразумевает, что визуальные положения глифов обязательно в этом порядке, хотя обычно они таковы.

Since:
1.4
См. также:
Значения константных полей

FLAG_COMPLEX_GLYPHS

public static final int FLAG_COMPLEX_GLYPHS

Флаг, используемый с getLayoutFlags, указывающий, что у этого GlyphVector есть сложное отображение глифов в символы (отображение, которое не отображает глифы в символы по одному в строго возрастающем или убывающем порядке, соответствующем направлению пробега).

Since:
1.4
См. также:
Значения константных полей

FLAG_MASK

public static final int FLAG_MASK

Маска для поддерживаемых флагов из getLayoutFlags. Только биты, покрытые маской, должны быть проверены.

Since:
1.4
См. также:
Значения константных полей

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

GlyphVector

public GlyphVector()

Методы

getFont

public abstract Font getFont()

Возвращает Font , связанную с этим GlyphVector.

Возвращает:
Font , используемой для создания этого GlyphVector.
См. также:
Font

getFontRenderContext

public abstract FontRenderContext getFontRenderContext()

Возвращает FontRenderContext , связанную с этим GlyphVector.

Возвращает:
FontRenderContext , используемой для создания этого GlyphVector.
См. также:
FontRenderContext, Font

performDefaultLayout

public abstract void performDefaultLayout()

Назначает значения по умолчанию для позиций каждого глифа в этом GlyphVector. Это может привести к потере информации, полученной во время начального макета этого GlyphVector.

getNumGlyphs

public abstract int getNumGlyphs()

Возвращает количество глифов в этом GlyphVector.

Возвращает:
количество глифов в этом GlyphVector.

getGlyphCode

public abstract int getGlyphCode(int glyphIndex)

Возвращает код глифа указанного глифа. Это значение не имеет смысла для чего-либо, кроме объекта Font , который создал этот GlyphVector.

Параметры:
glyphIndex - индекс в этом GlyphVector , соответствующий глифу, из которого необходимо извлечь код глифа.
Возвращает:
код глифа глифа в указанном glyphIndex.
Исключения:
IndexOutOfBoundsException - если glyphIndex меньше 0 или больше или равно количеству глифов в этом GlyphVector

getGlyphCodes

public abstract int[] getGlyphCodes(int beginGlyphIndex,
                                    int numEntries,
                                    int[] codeReturn)

Возвращает массив кодов глифов для указанных глифов. Содержимое этого возвращаемого значения не имеет смысла ни для чего, кроме объекта Font , используемого для создания этого GlyphVector . Этот метод используется для удобства и производительности при обработке кодов глифов. Если массив не передан, создается новый массив.

Параметры:
beginGlyphIndex - индекс в этом GlyphVector , с которого начинается извлечение кодов глифов
numEntries - количество кодов глифов для извлечения
codeReturn - массив, в который помещаются коды глифов и который затем возвращается
Возвращает:
массив кодов глифов для указанных глифов.
Исключения:
IllegalArgumentException - если numEntries меньше 0
IndexOutOfBoundsException - если beginGlyphIndex меньше 0
IndexOutOfBoundsException - если сумма beginGlyphIndex и numEntries больше количества глифов в этом GlyphVector

getGlyphCharIndex

public int getGlyphCharIndex(int glyphIndex)

Возвращает индекс символа указанного глифа. Индекс символа — это индекс первого логического символа, представленного глифом. Реализация по умолчанию предполагает взаимно однозначное, слева направо отображение глифов на символы.

Параметры:
glyphIndex - индекс глифа
Возвращает:
индекс первого символа, представленного глифом
С тех пор:
1.4

getGlyphCharIndices

public int[] getGlyphCharIndices(int beginGlyphIndex,
                                 int numEntries,
                                 int[] codeReturn)

Возвращает индексы символов указанных глифов. Индекс символа — это индекс первого логического символа, представленного глифом. Индексы возвращаются в порядке глифов. По умолчанию реализация вызывает getGlyphCharIndex для каждого глифа, и подклассы, вероятно, захотят переопределить эту реализацию по соображениям производительности. Используйте этот метод для удобства и производительности при обработке кодов глифов. Если массив не передан, создается новый массив.

Параметры:
beginGlyphIndex - индекс первого глифа
numEntries - количество индексов глифов
codeReturn - массив, в который возвращаются индексы символов
Возвращает:
массив индексов символов, по одному на каждый глиф.
С тех пор:
1.4

getLogicalBounds

public abstract Rectangle2D getLogicalBounds()

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

Возвращает:
a Rectangle2D , который представляет собой логические границы этого GlyphVector.

getVisualBounds

public abstract Rectangle2D getVisualBounds()

Возвращает визуальные границы этого GlyphVector. Визуальные границы — это ограничивающая рамка контура этого GlyphVector . Из-за растрирования и выравнивания пикселей возможно, что эта рамка не охватывает все пиксели, затронутые рендерингом этого GlyphVector.

Возвращает:
a Rectangle2D , который представляет собой ограничивающую рамку этого GlyphVector.

getPixelBounds

public Rectangle getPixelBounds(FontRenderContext renderFRC,
                                float x,
                                float y)

Возвращает пиксельные границы этого GlyphVector при рендеринге в графике с заданным FontRenderContext в заданном месте. RenderFRC необязательно должен быть таким же, как FontRenderContext этого GlyphVector, и может быть null. Если он равен null, используется FontRenderContext этого GlyphVector . Реализация по умолчанию возвращает визуальные границы, смещенные на x, y и округленные до ближайшего целого значения (то есть возвращает целочисленный прямоугольник, охватывающий визуальные границы) и игнорирует FRC. Подклассы должны переопределить этот метод.

Параметры:
renderFRC - FontRenderContext Graphics.
x - координата x, в которой необходимо отобразить этот GlyphVector.
y - координата y, в которой необходимо отобразить этот GlyphVector.
Возвращает:
a Rectangle , ограничивающий пиксели, которые будут затронуты.
С тех пор:
1.4

getOutline

public abstract Shape getOutline()

Возвращает Shape , внутренняя часть которого соответствует визуальному представлению этого GlyphVector.

Возвращает:
a Shape , который представляет собой контур этого GlyphVector.

getOutline

public abstract Shape getOutline(float x,
                                 float y)

Возвращает Shape , внутренняя часть которого соответствует визуальному представлению этого GlyphVector при отображении в x, y.

Параметры:
x - координата X этого GlyphVector.
y - координата Y этого GlyphVector.
Возвращает:
a Shape , который представляет собой контур этого GlyphVector при отображении в указанных координатах.

getGlyphOutline

public abstract Shape getGlyphOutline(int glyphIndex)

Возвращает Shape , внутренняя часть которого соответствует визуальному представлению указанного глифа в этом GlyphVector. Контур, возвращаемый этим методом, размещается вокруг начала каждого отдельного глифа.

Параметры:
glyphIndex - индекс в этом GlyphVector
Возвращает:
a Shape , который представляет собой контур глифа в указанном glyphIndex этом GlyphVector.
Исключения:
IndexOutOfBoundsException - если glyphIndex меньше 0 или больше или равно количеству глифов в этом GlyphVector

getGlyphOutline

public Shape getGlyphOutline(int glyphIndex,
                             float x,
                             float y)

Возвращает Shape , внутренняя часть которого соответствует визуальному представлению указанного глифа в этом GlyphVector, смещенного на x, y. Контур, возвращаемый этим методом, размещается вокруг начала каждого отдельного глифа.

Параметры:
glyphIndex - индекс в этом GlyphVector
x - координата X расположения этого GlyphVector
y - координата Y расположения этого GlyphVector
Возвращает:
a Shape , который представляет собой контур глифа в указанном glyphIndex этого GlyphVector при отображении в указанных координатах.
Исключения:
IndexOutOfBoundsException - если glyphIndex меньше 0 или больше или равно количеству глифов в этом GlyphVector
С тех пор:
1.4

getGlyphPosition

public abstract Point2D getGlyphPosition(int glyphIndex)

Возвращает позицию указанного глифа относительно начала координат этого GlyphVector . Если glyphIndex равно числу глифов в этом GlyphVector , этот метод возвращает позицию после последнего глифа. Эта позиция используется для определения продвижения всего GlyphVector.

Параметры:
glyphIndex - индекс в этом GlyphVector
Возвращает:
объект Point2D , который представляет собой позицию глифа в указанном glyphIndex.
Исключения:
IndexOutOfBoundsException - если glyphIndex меньше 0 или больше количества глифов в этом GlyphVector
См. также:
setGlyphPosition(int, java.awt.geom.Point2D)

setGlyphPosition

public abstract void setGlyphPosition(int glyphIndex,
                                      Point2D newPos)

Устанавливает положение указанного глифа в этом GlyphVector . Если glyphIndex равно количеству глифов в этом GlyphVector , этот метод устанавливает позицию после последнего глифа. Эта позиция используется для определения продвижения всего GlyphVector.

Параметры:
glyphIndex - индекс в этом GlyphVector
newPos - Point2D , в котором необходимо позиционировать глиф в указанном glyphIndex
Исключения:
IndexOutOfBoundsException - если glyphIndex меньше 0 или больше количества глифов в этом GlyphVector
См. также:
getGlyphPosition(int)

getGlyphTransform

public abstract AffineTransform getGlyphTransform(int glyphIndex)

Возвращает преобразование указанного глифа в этом GlyphVector. Преобразование относительно позиции глифа. Если не было применено специальное преобразование, null может быть возвращено. Нулевое значение возврата указывает на тождественное преобразование.

Параметры:
glyphIndex - индекс в этом GlyphVector
Возвращает:
объект AffineTransform, представляющий собой преобразование глифа в указанной glyphIndex.
Исключения:
IndexOutOfBoundsException - если glyphIndex меньше 0 или больше или равно количеству глифов в этом GlyphVector
См. также:
setGlyphTransform(int, java.awt.geom.AffineTransform)

setGlyphTransform

public abstract void setGlyphTransform(int glyphIndex,
                                       AffineTransform newTX)

Устанавливает преобразование указанного глифа в этом GlyphVector. Преобразование относительно позиции глифа. Аргумент null для newTX указывает, что для указанного глифа не применяется специальное преобразование. Этот метод может использоваться для поворота, отражения, трансляции и масштабирования глифа. Добавление преобразования может привести к существенным изменениям производительности.

Параметры:
glyphIndex - индекс в этом GlyphVector
newTX - новое преобразование глифа в glyphIndex
Исключения:
IndexOutOfBoundsException - если glyphIndex меньше 0 или больше или равно количеству глифов в этом GlyphVector
См. также:
getGlyphTransform(int)

getLayoutFlags

public int getLayoutFlags()

Возвращает флаги, описывающие общее состояние GlyphVector. Флаги, не описанные ниже, зарезервированы. Реализация по умолчанию возвращает 0 (что означает false) для корректировок позиции, преобразований, RTL и сложных флагов. Подклассы должны переопределить этот метод и убедиться, что он правильно описывает GlyphVector и соответствует результатам связанных вызовов.

Возвращает:
целое число, содержащее флаги, описывающие состояние
С:
1.4
См. также:
FLAG_HAS_POSITION_ADJUSTMENTS, FLAG_HAS_TRANSFORMS, FLAG_RUN_RTL, FLAG_COMPLEX_GLYPHS, FLAG_MASK

getGlyphPositions

public abstract float[] getGlyphPositions(int beginGlyphIndex,
                                          int numEntries,
                                          float[] positionReturn)

Возвращает массив позиций глифов для указанных глифов. Этот метод используется для удобства и производительности при обработке позиций глифов. Если массив не передан, создается новый. Четные элементы массива, начиная с нулевой позиции, содержат координаты X глифа с номером beginGlyphIndex + position/2. Нечетные элементы массива, начиная с первой позиции, содержат координаты Y глифа с номером beginGlyphIndex + (position-1)/2. Если beginGlyphIndex равно количеству глифов в этом GlyphVector, этот метод получает позицию после последнего глифа, и эта позиция используется для определения продвижения всего GlyphVector.

Параметры:
beginGlyphIndex - индекс, с которого начинать получение позиций глифов
numEntries - количество глифов для получения
positionReturn - массив, в который будут помещены позиции глифов, а затем возвращен.
Возвращает:
массив позиций глифов, заданных beginGlyphIndex и numEntries.
Исключения:
IllegalArgumentException - если numEntries меньше 0
IndexOutOfBoundsException - если beginGlyphIndex меньше 0
IndexOutOfBoundsException - если сумма beginGlyphIndex и numEntries больше количества глифов в этом GlyphVector плюс один

getGlyphLogicalBounds

public abstract Shape getGlyphLogicalBounds(int glyphIndex)

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

Параметры:
glyphIndex - индекс в этом GlyphVector, соответствующий глифу, для которого необходимо получить логические границы
Возвращает:
объект Shape, представляющий собой логические границы глифа в указанном glyphIndex.
Исключения:
IndexOutOfBoundsException - если glyphIndex меньше 0 или больше или равно количеству глифов в этом GlyphVector
См. также:
getGlyphVisualBounds(int)

getGlyphVisualBounds

public abstract Shape getGlyphVisualBounds(int glyphIndex)

Возвращает визуальные границы указанного глифа в GlyphVector. Границы, возвращаемые этим методом, расположены вокруг начала координат каждого отдельного глифа.

Параметры:
glyphIndex - индекс в этом GlyphVector, соответствующий глифу, для которого необходимо получить визуальные границы
Возвращает:
объект Shape, представляющий собой визуальные границы глифа в указанном glyphIndex.
Исключения:
IndexOutOfBoundsException - если glyphIndex меньше 0 или больше или равно количеству глифов в этом GlyphVector
См. также:
getGlyphLogicalBounds(int)

getGlyphPixelBounds

public Rectangle getGlyphPixelBounds(int index,
                                     FontRenderContext renderFRC,
                                     float x,
                                     float y)

Возвращает пиксельные границы глифа с указанным индексом, когда этот GlyphVector отображается в Graphics с заданным FontRenderContext в заданном месте. Объект renderFRC не обязательно должен совпадать с FontRenderContext этого GlyphVector, и может быть равен null. Если он равен null, используется FontRenderContext этого GlyphVector. Реализация по умолчанию возвращает визуальные границы глифа, смещенные по x, y и округленные до ближайшего целого значения, и игнорирует FRC. Подклассы должны переопределить этот метод.

Параметры:
index - индекс глифа.
renderFRC - FontRenderContext Graphics.
x - позиция X для отображения этого GlyphVector.
y - позиция Y для отображения этого GlyphVector.
Возвращает:
объект Rectangle ограничивающий пиксели, которые будут затронуты.
С:
1.4

getGlyphMetrics

public abstract GlyphMetrics getGlyphMetrics(int glyphIndex)

Возвращает метрики глифа с указанным индексом в этом GlyphVector.

Параметры:
glyphIndex - индекс в этом GlyphVector, соответствующий глифу, для которого необходимо получить метрики
Возвращает:
объект GlyphMetrics, представляющий метрики глифа в указанном glyphIndex в этом GlyphVector.
Исключения:
IndexOutOfBoundsException - если glyphIndex меньше 0 или больше или равно количеству глифов в этом GlyphVector

getGlyphJustificationInfo

public abstract GlyphJustificationInfo getGlyphJustificationInfo(int glyphIndex)

Возвращает информацию о выравнивании глифа с указанным индексом в этом GlyphVector.

Параметры:
glyphIndex - индекс в этом GlyphVector, соответствующий глифу, для которого необходимо получить свойства выравнивания
Возвращает:
объект GlyphJustificationInfo, представляющий свойства выравнивания глифа в указанном glyphIndex в этом GlyphVector.
Исключения:
IndexOutOfBoundsException - если glyphIndex меньше 0 или больше или равно количеству глифов в этом GlyphVector

equals

public abstract boolean equals(GlyphVector set)

Проверяет, равен ли указанный GlyphVector этому GlyphVector.

Параметры:
set - указанный GlyphVector для проверки
Возвращает:
true если указанный GlyphVector равен этому GlyphVector; false в противном случае.

© 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/GlyphVector.html

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