Spec-Zone.ru › OpenJDK 25

Класс GraphicsEnvironment

java.lang.Object
java.awt.GraphicsEnvironment
public abstract class GraphicsEnvironment extends Object
Класс GraphicsEnvironment описывает набор объектов GraphicsDevice и объектов Font, доступных приложению Java(tm) на определённой платформе. Ресурсы в этой GraphicsEnvironment могут находиться локально или на удалённом компьютере. Объекты GraphicsDevice могут быть экранами, принтерами или буферами изображений и являются целями методов рисования Graphics2D. С каждым GraphicsDevice связано несколько объектов GraphicsConfiguration. Эти объекты определяют различные конфигурации, в которых можно использовать GraphicsDevice.
См. также:
  • GraphicsDevice
  • GraphicsConfiguration

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

GraphicsEnvironment()
Модификатор Конструктор Описание
protected
Это абстрактный класс, и его нельзя создать напрямую.

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

Модификатор и тип Метод Описание
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()
Указывает на предпочтение пропорциональных шрифтов непропорциональным (например, шрифтам CJK с двойной шириной) при сопоставлении логических шрифтов физическим.
boolean registerFont(Font font)
Регистрирует созданный Font в этой GraphicsEnvironment.

Методы, объявленные в классе 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, InputStream), или полученный на основе созданного шрифта при вызове Font.deriveFont(int, float). После вызова этого метода такой шрифт становится доступен для создания новых Font по имени или названию семейства и перечисляется методами getAvailableFontFamilyNames() и getAllFonts() в контексте выполнения этого приложения или апплета. Это означает, что апплеты не могут регистрировать шрифты так, чтобы они были видны другим апплетам.

Метод может не зарегистрировать шрифт и поэтому вернуть false в следующих случаях:

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

    Обратите внимание: приложение может заменить ранее зарегистрированный созданный шрифт новым.

Параметры:
font — регистрируемый шрифт
Возвращает:
true, если font успешно зарегистрирован в этой 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(GraphicsConfiguration)

Сообщить об ошибке или предложить улучшение
Дополнительные справочные материалы по 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/GraphicsEnvironment.html

Spec-Zone.ru

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