Spec-Zone.ru › OpenJDK 24

Класс GraphicsConfiguration

java.lang.Object
java.awt.GraphicsConfiguration
public abstract class GraphicsConfiguration extends Object
Класс GraphicsConfiguration описывает характеристики графического устройства, такого как принтер или монитор. Может быть несколько объектов GraphicsConfiguration, связанных с одним графическим устройством, представляющих различные режимы или возможности рисования. Соответствующая структура в нативном коде будет различаться в зависимости от платформы. Например, в системах оконного интерфейса X11 каждый визуальный объект является разным GraphicsConfiguration. В Microsoft Windows объекты GraphicsConfiguration представляют доступные форматы пикселей в текущем разрешении и цветовой глубине.

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

      Frame f = new Frame(gc);  // where gc is a GraphicsConfiguration
      Rectangle bounds = gc.getBounds();
      f.setLocation(10 + bounds.x, 10 + bounds.y); 

Чтобы определить, является ли ваша среда виртуальной многоэкранной средой, вызовите метод getBounds для каждого из объектов GraphicsConfiguration в вашей системе. Если какая-либо из координат начала возвращаемых границ не равна (0, 0), ваша среда является виртуальной многоэкранной средой.

Вы также можете использовать getBounds для определения границ виртуального устройства. Для этого сначала вызовите метод getBounds для каждого из объектов GraphicsConfiguration в вашей системе. Затем вычислите объединение всех границ, возвращённых методами getBounds. Полученное объединение будет границами виртуального устройства. Пример кода, вычисляющий границы виртуального устройства:


      Rectangle virtualBounds = new Rectangle();
      GraphicsEnvironment ge = GraphicsEnvironment.
              getLocalGraphicsEnvironment();
      GraphicsDevice[] gs =
              ge.getScreenDevices();
      for (int j = 0; j < gs.length; j++) {
          GraphicsDevice gd = gs[j];
          GraphicsConfiguration[] gc =
              gd.getConfigurations();
          for (int i=0; i < gc.length; i++) {
              virtualBounds =
                  virtualBounds.union(gc[i].getBounds());
          }
      } 
См. также:
  • Window
  • Frame
  • GraphicsEnvironment
  • GraphicsDevice

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

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

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

Модификатор и тип Метод Описание
BufferedImage createCompatibleImage(int width, int height)
Возвращает BufferedImage с форматированием данных и цветовой моделью, совместимыми с этим GraphicsConfiguration.
BufferedImage createCompatibleImage(int width, int height, int transparency)
Возвращает BufferedImage, поддерживающий указанную прозрачность и имеющий формат данных и цветовую модель, совместимые с этим GraphicsConfiguration.
VolatileImage createCompatibleVolatileImage(int width, int height)
Возвращает VolatileImage с форматированием данных и цветовой моделью, совместимыми с этим GraphicsConfiguration.
VolatileImage createCompatibleVolatileImage(int width, int height, int transparency)
Возвращает VolatileImage с форматированием данных и цветовой моделью, совместимыми с этим GraphicsConfiguration.
VolatileImage createCompatibleVolatileImage(int width, int height, ImageCapabilities caps)
Возвращает VolatileImage с форматированием данных и цветовой моделью, совместимыми с этим GraphicsConfiguration, используя указанные возможности изображения.
VolatileImage createCompatibleVolatileImage(int width, int height, ImageCapabilities caps, int transparency)
Возвращает VolatileImage с форматированием данных и цветовой моделью, совместимыми с этим GraphicsConfiguration, используя указанные возможности изображения и значение прозрачности.
abstract Rectangle getBounds()
Возвращает границы GraphicsConfiguration в координатах устройства.
BufferCapabilities getBufferCapabilities()
Возвращает возможности буферизации этого GraphicsConfiguration.
abstract ColorModel getColorModel()
Возвращает ColorModel, связанный с этим GraphicsConfiguration.
abstract ColorModel getColorModel(int transparency)
Возвращает ColorModel, связанный с этим GraphicsConfiguration, который поддерживает указанную прозрачность.
abstract AffineTransform getDefaultTransform()
Возвращает по умолчанию AffineTransform для этого GraphicsConfiguration.
abstract GraphicsDevice getDevice()
Возвращает GraphicsDevice, связанный с этим GraphicsConfiguration.
ImageCapabilities getImageCapabilities()
Возвращает возможности изображения этого GraphicsConfiguration.
abstract AffineTransform getNormalizingTransform()
Возвращает AffineTransform, который может быть соединён с по умолчанию AffineTransform GraphicsConfiguration, так что 72 единицы в пространстве пользователя равны 1 дюйму в пространстве устройства.
boolean isTranslucencyCapable()
Возвращает, поддерживает ли этот GraphicsConfiguration тип прозрачности PERPIXEL_TRANSLUCENT.

Методы, унаследованные от класса java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

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

GraphicsConfiguration

protected GraphicsConfiguration()
Это абстрактный класс, который нельзя напрямую создавать экземпляры. Экземпляры должны быть получены из подходящего метода фабрики или запроса.
См. также:
  • GraphicsDevice.getConfigurations()
  • GraphicsDevice.getDefaultConfiguration()
  • GraphicsDevice.getBestConfiguration(java.awt.GraphicsConfigTemplate)
  • Graphics2D.getDeviceConfiguration()

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

getDevice

public abstract GraphicsDevice getDevice()
Возвращает GraphicsDevice, связанный с этим GraphicsConfiguration.
Возвращает:
объект GraphicsDevice, связанный с этим GraphicsConfiguration.

createCompatibleImage

public BufferedImage createCompatibleImage(int width, int height)
Возвращает BufferedImage с макетом данных и цветовой моделью, совместимыми с этим GraphicsConfiguration. Этот метод не имеет никакого отношения к отображению памяти устройства. Возвращенный BufferedImage имеет макет и цветовую модель, наиболее близкие к этой собственной конфигурации устройства, и поэтому могут быть оптимально скопированы на это устройство.
Параметры:
width - ширина возвращаемого BufferedImage
height - высота возвращаемого BufferedImage
Возвращает:
BufferedImage, макет данных и цветовая модель которого совместимы с этим GraphicsConfiguration.

createCompatibleImage

public BufferedImage createCompatibleImage(int width, int height, int transparency)
Возвращает BufferedImage, который поддерживает указанную прозрачность и имеет макет данных и цветовую модель, совместимые с этим GraphicsConfiguration. Этот метод не имеет никакого отношения к отображению памяти устройства. Возвращенный BufferedImage имеет макет и цветовую модель, которые могут быть оптимально скопированы на устройство с этим GraphicsConfiguration.
Параметры:
width - ширина возвращаемого BufferedImage
height - высота возвращаемого BufferedImage
transparency - указанный режим прозрачности
Возвращает:
BufferedImage, макет данных и цветовая модель которого совместимы с этим GraphicsConfiguration, а также поддерживает указанную прозрачность.
Исключения:
IllegalArgumentException - если прозрачность не является допустимым значением
См. также:
  • Transparency.OPAQUE
  • Transparency.BITMASK
  • Transparency.TRANSLUCENT

createCompatibleVolatileImage

public VolatileImage createCompatibleVolatileImage(int width, int height)
Возвращает VolatileImage с макетом данных и цветовой моделью, совместимыми с этим GraphicsConfiguration. Возвращенный VolatileImage может иметь данные, которые хранятся оптимально для базового графического устройства, и поэтому может извлечь выгоду из ускорения рендеринга, зависящего от платформы.
Параметры:
width - ширина возвращаемого VolatileImage
height - высота возвращаемого VolatileImage
Возвращает:
VolatileImage, макет данных и цветовая модель которого совместимы с этим GraphicsConfiguration.
С версии:
1.4
См. также:
  • Component.createVolatileImage(int, int)

createCompatibleVolatileImage

public VolatileImage createCompatibleVolatileImage(int width, int height, int transparency)
Возвращает VolatileImage с макетом данных и цветовой моделью, совместимыми с этим GraphicsConfiguration. Возвращенный VolatileImage может иметь данные, которые хранятся оптимально для базового графического устройства, и поэтому может извлечь выгоду из ускорения рендеринга, зависящего от платформы.
Параметры:
width - ширина возвращаемого VolatileImage
height - высота возвращаемого VolatileImage
transparency - указанный режим прозрачности
Возвращает:
VolatileImage, макет данных и цветовая модель которого совместимы с этим GraphicsConfiguration.
Исключения:
IllegalArgumentException - если прозрачность не является допустимым значением
С версии:
1.5
См. также:
  • Transparency.OPAQUE
  • Transparency.BITMASK
  • Transparency.TRANSLUCENT
  • Component.createVolatileImage(int, int)

createCompatibleVolatileImage

public VolatileImage createCompatibleVolatileImage(int width, int height, ImageCapabilities caps) throws AWTException
Возвращает VolatileImage с макетом данных и цветовой моделью, совместимыми с этим GraphicsConfiguration, используя указанные возможности изображения. Если параметр caps равен null, он фактически игнорируется, и этот метод создаст VolatileImage без учета ограничений ImageCapabilities. Возвращенный VolatileImage имеет макет и цветовую модель, наиболее близкие к этой собственной конфигурации устройства, и поэтому могут быть оптимально скопированы на это устройство.
Параметры:
width - ширина возвращаемого VolatileImage
height - высота возвращаемого VolatileImage
caps - возможности изображения
Возвращает:
VolatileImage, макет данных и цветовая модель которого совместимы с этим GraphicsConfiguration.
Исключения:
AWTException - если указанные возможности изображения не могут быть удовлетворены этой графической конфигурацией
С версии:
1.4

createCompatibleVolatileImage

public VolatileImage createCompatibleVolatileImage(int width, int height, ImageCapabilities caps, int transparency) throws AWTException
Возвращает VolatileImage с макетом данных и цветовой моделью, совместимыми с этим GraphicsConfiguration, используя указанные возможности изображения и значение прозрачности. Если параметр caps равен null, он фактически игнорируется, и этот метод создаст VolatileImage без учета ограничений ImageCapabilities. Возвращенный VolatileImage имеет макет и цветовую модель, наиболее близкие к этой собственной конфигурации устройства, и поэтому могут быть оптимально скопированы на это устройство.
Параметры:
width - ширина возвращаемого VolatileImage
height - высота возвращаемого VolatileImage
caps - возможности изображения
transparency - указанный режим прозрачности
Возвращает:
VolatileImage, макет данных и цветовая модель которого совместимы с этим GraphicsConfiguration.
Исключения:
IllegalArgumentException - если прозрачность не является допустимым значением
AWTException - если указанные возможности изображения не могут быть удовлетворены этой графической конфигурацией
С версии:
1.5
См. также:
  • Transparency.OPAQUE
  • Transparency.BITMASK
  • Transparency.TRANSLUCENT
  • Component.createVolatileImage(int, int)

getColorModel

public abstract ColorModel getColorModel()
Возвращает ColorModel, связанный с этим GraphicsConfiguration.
Возвращает:
объект ColorModel, связанный с этим GraphicsConfiguration.

getColorModel

public abstract ColorModel getColorModel(int transparency)
Возвращает ColorModel, связанный с этим GraphicsConfiguration, который поддерживает указанную прозрачность.
Параметры:
transparency - указанный режим прозрачности
Возвращает:
объект ColorModel, связанный с этим GraphicsConfiguration и поддерживающий указанную прозрачность, или null, если прозрачность не является допустимым значением.
См. также:
  • Transparency.OPAQUE
  • Transparency.BITMASK
  • Transparency.TRANSLUCENT

getDefaultTransform

public abstract AffineTransform getDefaultTransform()
Возвращает стандартное преобразование AffineTransform для этого GraphicsConfiguration. Это преобразование обычно является тождественным преобразованием для большинства обычных экранов. Стандартное преобразование сопоставляет координаты устройству таким образом, что 72 единицы координат пользовательского пространства приблизительно соответствуют 1 дюйму в пространстве устройства. Нормирующее преобразование может использоваться для более точного отображения этого соответствия. Координаты в пространстве координат, определяемом стандартным преобразованием AffineTransform для устройств экрана и принтера, имеют начало в верхнем левом углу целевой области устройства, при этом координаты X увеличиваются вправо, а координаты Y увеличиваются вниз. Для буферов изображений, не связанных с устройством, таких как те, которые не созданы createCompatibleImage, это преобразование является тождественным преобразованием.
Returns:
стандартное преобразование AffineTransform для этого GraphicsConfiguration.

getNormalizingTransform

public abstract AffineTransform getNormalizingTransform()
Возвращает преобразование, которое можно конкатенировать со стандартным преобразованием AffineTransform устройства GraphicsConfiguration, чтобы 72 единицы в пользовательском пространстве соответствовали 1 дюйму в пространстве устройства.

Для конкретного Graphics2D, g, можно сбросить преобразование для создания такого соответствия, используя следующий псевдокод:

      GraphicsConfiguration gc = g.getDeviceConfiguration();

      g.setTransform(gc.getDefaultTransform());
      g.transform(gc.getNormalizingTransform());
 
Обратите внимание, что иногда это преобразование является тождественным, например, для принтеров или вывода метафайлов, и что это преобразование является точным лишь в той мере, в которой это отражено информацией, предоставленной подлежащей системой. Для буферов изображений, не связанных с устройством, таких как те, которые не созданы createCompatibleImage, это преобразование является тождественным, так как нет действительного измерения расстояния.
Returns:
преобразование для конкатенации со стандартным преобразованием AffineTransform, чтобы 72 единицы в пользовательском пространстве отображались как 1 дюйм в пространстве устройства.

getBounds

public abstract Rectangle getBounds()
Возвращает границы GraphicsConfiguration в координатах устройства. В многоэкранной среде с виртуальным устройством границы могут иметь отрицательные значения X или Y.
Returns:
границы области, покрываемой этим GraphicsConfiguration.
Since:
1.3

getBufferCapabilities

public BufferCapabilities getBufferCapabilities()
Возвращает возможности буферизации этого GraphicsConfiguration.
Returns:
возможности буферизации этого объекта графической конфигурации
Since:
1.4

getImageCapabilities

public ImageCapabilities getImageCapabilities()
Возвращает возможности работы с изображениями для этого GraphicsConfiguration.
Returns:
возможности работы с изображениями для этого объекта графической конфигурации
Since:
1.4

isTranslucencyCapable

public boolean isTranslucencyCapable()
Возвращает, поддерживает ли это GraphicsConfiguration тип прозрачности PERPIXEL_TRANSLUCENT.
Returns:
указывает, поддерживает ли данная графическая конфигурация эффекты прозрачности.
Since:
1.7
See Also:
  • Window.setBackground(Color)

© 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/GraphicsConfiguration.html

Spec-Zone.ru

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