Spec-Zone.ru › OpenJDK 27

Класс GraphicsEnvironment

java.lang.Object
java.awt.GraphicsEnvironment
public abstract class GraphicsEnvironment extends Object
Класс GraphicsEnvironment описывает коллекцию объектов GraphicsDevice и объектов Font, доступных Java-приложению на определенной платформе. Ресурсы в этом 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
Модификатор и тип Метод Описание
protected Object clone()
Создает и возвращает копию этого объекта.
boolean equals(Object obj)
Проверяет, «равен ли» этот объект другому объекту.
protected void finalize()
Устарело, будет удалено: этот элемент API может быть удален в будущей версии.
Финализация объявлена устаревшей и будет удалена в одном из будущих выпусков.
final Class<?> getClass()
Возвращает класс времени выполнения этого Object.
int hashCode()
Возвращает хеш-код этого объекта.
final void notify()
Пробуждает один поток, ожидающий на мониторе этого объекта.
final void notifyAll()
Пробуждает все потоки, ожидающие на мониторе этого объекта.
String toString()
Возвращает строковое представление объекта.
final void wait()
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или interrupt.
final void wait(long timeoutMillis)
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или interrupt, либо истечения определенного промежутка реального времени.
final void wait(long timeoutMillis, int nanos)
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или interrupt, либо истечения определенного промежутка реального времени.

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

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

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

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

preferLocaleFonts

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

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

Начиная с:
1.5

preferProportionalFonts

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

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

Начиная с:
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, 2026, 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.

Spec-Zone.ru

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