Spec-Zone.ru › OpenJDK 21

Класс 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()
Возвращает точку, в которой Windows должны быть центрированы.
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 , представляющие устройства экрана
Исключение:
HeadlessException - если isHeadless() возвращает true
См. также:
  • isHeadless()

getDefaultScreenDevice

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

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

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

preferLocaleFonts

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

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

С:
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, 2023, 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/21/docs/api/java.desktop/java/awt/GraphicsEnvironment.html

Spec-Zone.ru

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