Класс GraphicsEnvironment
public abstract class GraphicsEnvironment extends Object
GraphicsEnvironment описывает набор объектов GraphicsDevice и объектов Font, доступных приложению Java(tm) на определённой платформе. Ресурсы в этой GraphicsEnvironment могут находиться локально или на удалённом компьютере. Объекты GraphicsDevice могут быть экранами, принтерами или буферами изображений и являются целями методов рисования Graphics2D. С каждым GraphicsDevice связано несколько объектов GraphicsConfiguration. Эти объекты определяют различные конфигурации, в которых можно использовать GraphicsDevice.- См. также:
Краткое описание конструкторов
| Модификатор | Конструктор | Описание |
|---|---|---|
protected |
Это абстрактный класс, и его нельзя создать напрямую. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
abstract Graphics2D |
createGraphics |
Возвращает объект Graphics2D для рисования в указанном BufferedImage. |
abstract Font[] |
getAllFonts() |
Возвращает массив, содержащий экземпляры всех шрифтов, доступных в этой GraphicsEnvironment, размером в один пункт. |
abstract String[] |
getAvailableFontFamilyNames() |
Возвращает массив с названиями всех семейств шрифтов в этой GraphicsEnvironment, локализованными для локали по умолчанию, как возвращает Locale.getDefault(). |
abstract String[] |
getAvailableFontFamilyNames |
Возвращает массив с названиями всех семейств шрифтов в этой 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 в этой GraphicsEnvironment. |
Подробное описание конструкторов
GraphicsEnvironment
protected GraphicsEnvironment()
Подробное описание методов
getLocalGraphicsEnvironment
public static GraphicsEnvironment getLocalGraphicsEnvironment()
GraphicsEnvironment.- Возвращает:
- локальную
GraphicsEnvironment
isHeadless
public static boolean isHeadless()
- Возвращает:
-
true, если в этой среде нельзя использовать дисплей, клавиатуру и мышь; в противном случаеfalse - Начиная с версии:
- 1.4
- См. также:
isHeadlessInstance
public boolean isHeadlessInstance()
HeadlessException.- Возвращает:
-
true, если в этой среде можно использовать дисплей, клавиатуру и мышь; в противном случаеfalse - Начиная с версии:
- 1.4
- См. также:
getScreenDevices
public abstract GraphicsDevice[] getScreenDevices() throws HeadlessException
GraphicsDevice.- Возвращает:
- массив, содержащий все объекты
GraphicsDevice, представляющие устройства отображения - Выбрасывает:
-
HeadlessException— если isHeadless() возвращает true - См. также:
getDefaultScreenDevice
public abstract GraphicsDevice getDefaultScreenDevice() throws HeadlessException
GraphicsDevice.- Возвращает:
GraphicsDevice, представляющее устройство экрана по умолчанию- Выбрасывает:
-
HeadlessException— если isHeadless() возвращает true - См. также:
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
public abstract String[] getAvailableFontFamilyNames()
GraphicsEnvironment, локализованными для локали по умолчанию, как возвращает Locale.getDefault(). Обычно этот метод используется, чтобы предоставить пользователю возможность выбрать определённое название семейства. Затем приложение может указать это название при создании шрифта вместе с таким стилем, как полужирный или курсив, предоставив системе шрифтов возможность выбрать наиболее подходящий вариант среди нескольких шрифтов одного семейства.
- Возвращает:
- массив объектов
Stringс названиями семейств шрифтов, локализованными для локали по умолчанию, или подходящими альтернативными названиями, если для этой локали название отсутствует. - Начиная с версии:
- 1.2
- См. также:
getAvailableFontFamilyNames
public abstract String[] getAvailableFontFamilyNames(Locale l)
GraphicsEnvironment, локализованными для указанной локали. Обычно этот метод используется, чтобы предоставить пользователю возможность выбрать определённое название семейства. Затем приложение может указать это название при создании шрифта вместе с таким стилем, как полужирный или курсив, предоставив системе шрифтов возможность выбрать наиболее подходящий вариант среди нескольких шрифтов одного семейства.
- Параметры:
-
l— объектLocale, представляющий определённый географический, политический или культурный регион. Указаниеnullравнозначно указаниюLocale.getDefault(). - Возвращает:
- массив объектов
Stringс названиями семейств шрифтов, локализованными для указаннойLocale, или подходящими альтернативными названиями, если для указанной локали название отсутствует. - Начиная с версии:
- 1.2
- См. также:
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()
Фактическое изменение поведения при отображении шрифтов в результате вызова этого метода зависит от реализации; метод может вообще не повлиять на поведение. Поведение может различаться при отображении шрифтов в облегчённых компонентах и компонентах с нативным окружением. Поскольку вызов этого метода запрашивает другой шрифт, следует учитывать возможность изменения метрик и необходимость пересчёта размеров окон и компоновки. Поэтому этот метод следует вызывать до инициализации пользовательского интерфейса.
- Начиная с версии:
- 1.5
getCenterPoint
public Point getCenterPoint() throws HeadlessException
- Возвращает:
- точку, в которой следует центрировать окна
- Выбрасывает:
-
HeadlessException— если isHeadless() возвращает true - Начиная с версии:
- 1.4
- См. также:
getMaximumWindowBounds
public Rectangle getMaximumWindowBounds() throws HeadlessException
Чтобы получить доступные границы одного дисплея, используйте GraphicsConfiguration.getBounds() и Toolkit.getScreenInsets().
- Возвращает:
- максимальные границы для центрируемых окон
- Выбрасывает:
-
HeadlessException— если isHeadless() возвращает true - Начиная с версии:
- 1.4
- См. также:
© 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