Spec-Zone.ru › OpenJDK 24

Класс 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.

Методы, объявленные в классе 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 используется для рендеринга текста. Если шрифт в данной среде имеет несколько программируемых вариантов, например, шрифты Multiple-Master, в массиве возвращается только один экземпляр этого шрифта, а другие вариации должны быть получены приложением.

Если шрифт в данной среде имеет несколько программируемых вариаций, таких как шрифты 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, если font успешно зарегистрирован в этой GraphicsEnvironment.
Бросает:
NullPointerException - если font равно null
С:
1.6

preferLocaleFonts

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

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

Since:
1.5

preferProportionalFonts

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

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

Since:
1.5

getCenterPoint

public Point getCenterPoint() throws HeadlessException
Возвращает точку, по которой должны центрироваться окна. Рекомендуется проверять, помещаются ли центрированные окна в доступную область отображения, используя getMaximumWindowBounds().
Returns:
точка, по которой должны центрироваться окна
Throws:
HeadlessException - если isHeadless() возвращает true
Since:
1.4
See Also:
  • getMaximumWindowBounds()

getMaximumWindowBounds

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

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

Returns:
максимальные границы для центрированных окон
Throws:
HeadlessException - если isHeadless() возвращает true
Since:
1.4
See Also:
  • getCenterPoint()
  • GraphicsConfiguration.getBounds()
  • Toolkit.getScreenInsets(java.awt.GraphicsConfiguration)

© 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://download.java.net/java/early_access/jdk24/docs/api/java.desktop/java/awt/GraphicsEnvironment.html

Spec-Zone.ru

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