Класс GraphicsEnvironment

public abstract class GraphicsEnvironment
extends Object

Класс GraphicsEnvironment описывает набор объектов GraphicsDevice и объектов Font, доступных для Java(tm) приложения на конкретной платформе. Ресурсы в этой GraphicsEnvironment могут быть локальными или на удалённой машине. Объекты GraphicsDevice могут быть экранами, принтерами или буферами изображений и являются местом назначения методов рисования Graphics2D. Каждый объект GraphicsDevice имеет ряд объектов GraphicsConfiguration, связанных с ним. Эти объекты задают различные конфигурации, в которых можно использовать GraphicsDevice.

См. также:
GraphicsDevice, GraphicsConfiguration

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

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

Это абстрактный класс и не может быть создан напрямую.

Методы

Модификатор и тип Метод Описание
abstract Graphics2D createGraphics​(BufferedImage img)

Возвращает объект Graphics2D для отрисовки в указанном BufferedImage.

abstract Font[] getAllFonts()

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

abstract String[] getAvailableFontFamilyNames()

Возвращает массив, содержащий имена всех начертаний шрифтов в этой GraphicsEnvironment, локализованных для системного языка, как возвращается Locale.getDefault().

abstract String[] getAvailableFontFamilyNames​(Locale l)

Возвращает массив, содержащий имена всех начертаний шрифтов в этой GraphicsEnvironment, локализованных для указанного языка.

Point getCenterPoint()

Возвращает точку, по которой должны центрироваться окна.

abstract GraphicsDevice getDefaultScreenDevice()

Возвращает экранное значение по умолчанию GraphicsDevice.

static GraphicsEnvironment getLocalGraphicsEnvironment()

Возвращает локальный GraphicsEnvironment.

Rectangle getMaximumWindowBounds()

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

abstract GraphicsDevice[] getScreenDevices()

Возвращает массив всех экранов GraphicsDevice объектов.

static boolean isHeadless()

Проверяет, поддерживается ли отображение, клавиатура и мышь в этой среде.

boolean isHeadlessInstance()

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

void preferLocaleFonts()

Указывает предпочтение для шрифтов, специфичных для языка, при сопоставлении логических шрифтов с физическими.

void preferProportionalFonts()

Указывает предпочтение пропорциональных шрифтов над непропорциональными (например,

boolean registerFont​(Font font)

Регистрирует созданный Font в этой GraphicsEnvironment.

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

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

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

GraphicsEnvironment

protected GraphicsEnvironment()

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

Методы

getLocalGraphicsEnvironment

public static GraphicsEnvironment getLocalGraphicsEnvironment()

Возвращает локальную GraphicsEnvironment.

Возвращает:
локальную GraphicsEnvironment

isHeadless

public static boolean isHeadless()

Проверяет, поддерживается ли в данной среде отображение, клавиатура и мышь. Если этот метод возвращает true, из областей Toolkit и GraphicsEnvironment, зависящих от отображения, клавиатуры или мыши, будет выброшено исключение HeadlessException.

Возвращает:
true , если эта среда не может поддерживать отображение, клавиатуру и мышь; false в противном случае
С:
1.4
См. также:
HeadlessException

isHeadlessInstance

public boolean isHeadlessInstance()

Возвращает, поддерживается ли в данной графической среде отображение, клавиатура и мышь. Если возвращается true, HeadlessException будет выброшено из областей графической среды, зависящих от отображения, клавиатуры или мыши.

Возвращает:
true , если в этой среде поддерживается отображение, клавиатура и мышь; false в противном случае
С:
1.4
См. также:
HeadlessException, isHeadless()

getScreenDevices

public abstract GraphicsDevice[] getScreenDevices()
                                           throws HeadlessException

Возвращает массив всех объектов экрана GraphicsDevice.

Возвращает:
массив, содержащий все объекты GraphicsDevice , представляющие устройства экрана
Выбрасывает:
HeadlessException - если isHeadless() возвращает true
См. также:
isHeadless()

getDefaultScreenDevice

public abstract GraphicsDevice getDefaultScreenDevice()
                                               throws HeadlessException

Возвращает устройство экрана по умолчанию GraphicsDevice.

Возвращает:
GraphicsDevice , представляющее устройство экрана по умолчанию
Выбрасывает:
HeadlessException - если isHeadless() возвращает true
См. также:
isHeadless()

createGraphics

public abstract Graphics2D createGraphics(BufferedImage img)

Возвращает объект Graphics2D для отрисовки в указанный BufferedImage.

Параметры:
img - указанный BufferedImage
Возвращает:
объект Graphics2D для отрисовки в указанный BufferedImage
Выбрасывает:
NullPointerException - если img равно null

getAllFonts

public abstract Font[] getAllFonts()

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

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

Если шрифт в этой среде имеет несколько программируемых вариаций, таких как шрифты Multiple-Master, в массиве Font возвращается только один экземпляр этого шрифта. Другие вариации должны быть получены приложением.

Возвращает:
массив объектов Font
С:
1.2
См. также:
getAvailableFontFamilyNames(), Font, Font.deriveFont(int, float), Font.getFontName()

getAvailableFontFamilyNames

public abstract String[] getAvailableFontFamilyNames()

Возвращает массив, содержащий имена всех наборов шрифтов в этой GraphicsEnvironment, локализованные для локали по умолчанию, как возвращается Locale.getDefault().

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

Возвращает:
массив String , содержащий имена наборов шрифтов, локализованные для локали по умолчанию, или подходящее альтернативное имя, если для данной локали нет имени.
С:
1.2
См. также:
getAllFonts(), Font, Font.getFamily()

getAvailableFontFamilyNames

public abstract String[] getAvailableFontFamilyNames(Locale l)

Возвращает массив, содержащий имена всех наборов шрифтов в этой GraphicsEnvironment локализованные для указанной локали.

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

Параметры:
l - объект Locale , представляющий конкретный географический, политический или культурный регион. Указание null эквивалентно указанию Locale.getDefault().
Возвращает:
массив String , содержащий имена наборов шрифтов, локализованные для указанной Locale, или подходящее альтернативное имя, если для указанной локали нет имени.
С:
1.2
См. также:
getAllFonts(), Font, Font.getFamily()

registerFont

public boolean registerFont(Font font)

Регистрирует созданный Font в этой GraphicsEnvironment. Созданный шрифт — это шрифт, который был возвращен в результате вызова Font.createFont(int, java.io.InputStream) или получен из созданного шрифта с помощью вызова Font.deriveFont(int, float). После вызова этого метода для такого шрифта он доступен для использования при построении новых Font по имени или имени набора, и перечисляется с помощью getAvailableFontFamilyNames() и getAllFonts() в контексте выполнения этого приложения или апплета. Это означает, что апплеты не могут регистрировать шрифты таким образом, чтобы они были видны другим апплетам.

Причины, по которым этот метод может не зарегистрировать шрифт и, следовательно, вернуть false:

  • Шрифт не является созданным Font.
  • Шрифт конфликтует с уже существующим в этой GraphicsEnvironment не-созданным Font. Например, если имя является именем системного шрифта или логического шрифта, как описано в документации класса Font. Зависит от реализации, может ли шрифт также конфликтовать, если он имеет то же имя набора, что и системный шрифт.

    Обратите внимание, что приложение может заменить регистрацию ранее созданного шрифта новым.

Параметры:
font - регистрируемый шрифт
Возвращает:
true, если шрифт успешно зарегистрирован в этой GraphicsEnvironment.
Выбрасывает:
NullPointerException - если font равно null
С:
1.6

preferLocaleFonts

public void preferLocaleFonts()

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

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

С:
1.5

preferProportionalFonts

public void preferProportionalFonts()

Указывает предпочтение пропорциональным шрифтам по сравнению с непропорциональными (например, шрифтами CJK с двойным интервалом) при сопоставлении логических шрифтов с физическими шрифтами. Если отображение по умолчанию содержит шрифты, для которых существуют пропорциональные и непропорциональные варианты, вызов этого метода указывает, что отображение должно использовать пропорциональный вариант.

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

С:
1.5

getCenterPoint

public Point getCenterPoint()
                     throws HeadlessException

Возвращает точку, в которой должны центрироваться окна. Рекомендуется проверять центрированные окна, чтобы убедиться, что они помещаются в доступную область отображения, используя getMaximumWindowBounds().

Возвращает:
точку, в которой должны центрироваться окна
Выбрасывает:
HeadlessException - если isHeadless() возвращает true
С:
1.4
См. также:
getMaximumWindowBounds()

getMaximumWindowBounds

public Rectangle getMaximumWindowBounds()
                                 throws HeadlessException

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

Чтобы получить используемые границы одного дисплея, используйте GraphicsConfiguration.getBounds() и Toolkit.getScreenInsets().

Возвращает:
максимальные границы для центрированных окон
Изволяет:
HeadlessException - если isHeadless() возвращает true
С:
1.4
См. также:
getCenterPoint(), GraphicsConfiguration.getBounds(), Toolkit.getScreenInsets(java.awt.GraphicsConfiguration)

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

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